如何从阵列进行嵌套列表中的PHP(小白) [英] How to make a Nested List from array in PHP (noob)
本文介绍了如何从阵列进行嵌套列表中的PHP(小白)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有用户选择项的应用程序,然后将它填补了中有两列的表:类别和项目。它是这样的:
I have an app that users choose items and then it fills a table that has two columns in it: Category and Items. Its something like this:
Category | Items
-----------------
PET | Dog Food
HEALTH | Tooth Brush
PET | Cat Food
COLD FOOD | Steak
COLD FOOD | Eggs
在我的SELECT语句中我为了按类别的数据然后通过项目和我使用一个while循环来将数据放到一个数组。
In my select statement I order the data by Category then by Items and I am using a WHILE loop to drop the data into an array.
while($listItems = mysql_fetch_array($results))
{
$myArray[] = array("category" => $listItems["Category"],
"item" => $listItems["Name"]);
}
在我做的print_r($ myArray的);我得到的是这样的:
When I do a print_r($myArray); I get something like this:
Array ( [0] => Array ( [category] => Cold Food [item] => Steak )
[1] => Array ( [category] => Food [item] => Eggs )
[2] => Array ( [category] => Health [item] => Tooth Brush )
[3] => Array ( [category] => Pet [item] => Cat Food )
[4] => Array ( [category] => Pet [item] => Dog Food ) )
我所想要做的是将数据输出到一个嵌套列表这样的事情。
What I am wanting to do is output the data into a nested list something like this.
- 寒食
- 牛排
- 鸡蛋
- 牙刷
- 猫粮
- 狗粮
任何帮助,欢迎!谢谢!
Any help is welcomed! Thanks!
推荐答案
试试这个:
while($listItems = mysql_fetch_array($results))
{
$cat = $listItems['Category'];
$name = $listItems['Name'];
if(!isset($myArray[$cat]))
$myArray[$cat] = array();
$myArray[$cat][] = $name;
}
然后,输出它,你应该这样做:
Then, to output it you'd do this:
$buffer = '<ul>';
foreach($myArray as $cat => $items) {
$buffer .= "<li>$cat</li><li><ul>";
foreach($items as $item) {
$buffer .= "<li>$item</li>";
}
$buffer .= '</ul></li>';
}
$buffer .= '</ul>';
echo $buffer;
这篇关于如何从阵列进行嵌套列表中的PHP(小白)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文