Monday 15 July 2013

php - covert multidimensional array to ul li -



php - covert multidimensional array to ul li -

i have follow array

$array = array( array("title" => "soup", array( "name" => "miso soup", "description" => "popular japanese soup", "price" => "7.00","8.00", ), array( "name" => "seafood soup", "description" => "very delicious soup", "price" => "10.00","18.00", ), ), array("title" => "rice", array( "name" => "miso soup", "description" => "popular japanese soup", "price" => "7.00","8.00", ), array( "name" => "seafood soup", "description" => "very delicious soup", "price" => "10.00","18.00", ), ) );

my end goal create list like

<h1>soup</h1> <ul> <li>miso soup <p>popular japanese soup</p><span>7.00<span><span>8.00</span></li> <li>seafood soup <p>very delicious soup</p><span>10.00</span><span>18.00</span></li> </ul> <h1>rice</h1> <ul> <li>miso soup <p>popular japanese soup</p><span>7.00<span><span>8.00</span></li> <li>seafood soup <p>very delicious soup</p><span>10.00</span><span>18.00</span></li> </ul>

i seek set loop within foreach, result came out duplicate li.

any help appreciated! give thanks in advance!

you should alter design of array, @ top array there entries "title", "0" , "1" create more difficult. also, syntax not create want prices. create this:

$array = array( array( "title" => "soup", "data" => array( array( "name" => "miso soup", "description" => "popular japanese soup", "price" => array("7.00","8.00"), ), array( "name" => "seafood soup", "description" => "very delicious soup", "price" => array("10.00","18.00"), ) ), ), array( "title" => "rice", "data" => array( array( "name" => "miso soup", "description" => "popular japanese soup", "price" => array("7.00","8.00"), ), array( "name" => "seafood soup", "description" => "very delicious soup", "price" => array("10.00","18.00"), ) ) ) );

finally, can create output this:

foreach ($array $entry) { echo "<h1>".$entry['title']."</h1>"; echo "<ul>"; foreach ($entry['data'] $data) { echo "<li>".$data['name']." <p>".$data['description']."</p>"; foreach ($data['price'] $price) { echo "<span>".$price."</span>"; } } echo "</ul>"; }

php

No comments:

Post a Comment