我有一个从中获取数据的表,它创建了一个项目列表。
数据如下:
Menu1,Header
Menu2,MenuItem
Menu3,MenuItem
Menu4,MenuItem
Menu5,MenuItem
Menu6,Header
Menu7,MenuItem
Menu8,MenuItem
Menu9,MenuItem
Menu10,MenuItem
...
我的数组需要看起来像这样:
MenuHeader -> MenuItem
-> MenuItem
-> MenuItem
MenuHeader -> MenuItem
-> MenuItem
-> MenuItem
有什么想法吗?
以下是一些大致想法的代码。您需要对其进行调整以使用您的数据库和数据。如果可以的话,我建议避免这样做,并调整数据库以将MenuItems与它们各自的标题关联起来。
<?php
$mysqli = new mysqli("localhost", "user","password","database", "3306");
$query = "SELECT id, title, type FROM tbl_name";
$result = $mysqli->query($query);
$array1 = array();
$currentHeading = "undefined";
while($row = $result->fetch_assoc())
{
if($row['type'] == 'MenuHeader') {
$array1[$row['title']] = array();
$currentHeading = $row['title'];
} else {
$array1[$currentHeading][] = $row['title'];
}
}
?>