/ / Odstránenie poľa a návrat prvých 10 výsledkov - php, json, for-loop, curl, foreach

Odstránenie poľa a návrat prvých 10 výsledkov - php, json, for-loop, curl, foreach

Takže sa snažím opakovať to, čo sa zdá byť json feed, používam nasledujúci kód na získanie všetkých výsledkov poľa, ale ako môžem vrátiť konkrétne položky, povedzme prvé 6 alebo 10?

<?php

$current_url = base64_encode($url="http://".$_SERVER["HTTP_HOST"].$_SERVER["REQUEST_URI"]);
$headers = array("Content-Type: application/json");
$url = "https://weedmaps.com/api/web/v1/listings/green-valley-medicinal/menu?show_unpublished=false&type=dispensary";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, false);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true );
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$result = curl_exec($ch);
curl_close($ch);
$menu_data = json_decode($result, true);
foreach($menu_data["categories"] as $menu_item){
foreach ($menu_item["items"] as $item) {
echo "<article class="col-sm-6 col-md-4">";
echo isset($item["image_url"]) ? "<img class="media-object menu-item-photo" height="120" width="120" src="/images/".$item["image_url"]."">" : "<img class="media-object menu-item-photo" height="120" src="images/mmjicon.png">";
echo "<h2>".$item["name"]."</h2>";
echo "<p>".$item["body"]."</p>";
echo "</article>";
}
}
?>

Akákoľvek pomoc by bola veľmi ocenená. Na zdravie!

odpovede:

0 pre odpoveď č. 1

Existuje množstvo spôsobov, ako to urobiť.

Udržiavajte si foreach slučku, pridajte počítať, zvyšujte ju a prerušte slučku po dosiahnutí 10.

$count = 0;
foreach(...) {
...
if (++$count >= 10) break;
}

0 pre odpoveď č. 2

Ak nemáte kontrolu nad počtom získaných údajov, môžete používať počítadlo $ na vaše predpovedanie.

$your_limit = 6;
$counter = 0;
foreach($menu_data["categories"] as $menu_item){
if ( ++$counter > $your_limit ){
break;
}
foreach ($menu_item["items"] as $item) {
echo "<article class="col-sm-6 col-md-4">";
echo isset($item["image_url"]) ? "<img class="media-object menu-item-photo" height="120" width="120" src="/images/".$item["image_url"]."">" : "<img class="media-object menu-item-photo" height="120" src="images/mmjicon.png">";
echo "<h2>".$item["name"]."</h2>";
echo "<p>".$item["body"]."</p>";
echo "</article>";
}
}