Bir dizi veri ayıklamak için PHP seçenekleri?

2 Cevap

Satır ve sütun - Bu iki boyutlu bir dizi göz önüne alındığında, her bir elemanı iki dizinleri vardır.

<?php
$shop = array( array("rose", 1.25 , 15),
               array("daisy", 0.75 , 25),
               array("orchid", 1.15 , 7) 
             ); 
?>

Bu, dizi veri ayıklama satır ve sütun indeksleri kullanılarak benim sadece iki seçenek vardır?

<?php
echo "<h1>Manual access to each element</h1>";

echo $shop[0][0]." costs ".$shop[0][1]." and you get ".$shop[0][2]."<br />";
echo $shop[1][0]." costs ".$shop[1][1]." and you get ".$shop[1][2]."<br />";
echo $shop[2][0]." costs ".$shop[2][1]." and you get ".$shop[2][2]."<br />";

echo "<h1>Using loops to display array elements</h1>";

echo "<ol>";
for ($row = 0; $row < 3; $row++)
{
    echo "<li><b>The row number $row</b>";
    echo "<ul>";

    for ($col = 0; $col < 3; $col++)
    {
        echo "<li>".$shop[$row][$col]."</li>";
    }

    echo "</ul>";
    echo "</li>";
}
echo "</ol>";
?>

2 Cevap

foreach($shop as $items){
 echo $items[0]." costs ".$items[1]." and you get ".$items[2]."<br />";
}

foreach benim için daha basit görünüyor, artı anahtar gibi sayısal değilse onu idare ederim

array(         'foo' => array("rose", 1.25 , 15),
               'bar' => array("daisy", 0.75 , 25),
               'foobar' =>array("orchid", 1.15 , 7) 
             );

şahsen foreach daha az esnektir, çünkü çoğu durumda PHP for kullanmak için kaçının.

Ayrıca kullanabilirsiniz

foreach ($ shoprow olarak $ dükkanı)