【发布时间】:2017-03-19 20:19:16
【问题描述】:
我的阵列需要帮助。几个小时试图找到解决方案,但我无法应对。我试图以这种方式来做,然而,代码证明是完全没用的。
private function findKey($array, $keySearch,$app,$klucz='')
{
foreach ($array as $key => $item) {
if ($key == $keySearch) {
$c2 = [];
$cache = [
'nazwa'=>$app->nazwa,
'link'=>$app->link,
'child'=>[]
];
// echo $klucz; echo '<br />';
if($klucz && $klucz != '/'){
// echo $klucz;
// $k = explode('/',$klucz);
// $url = "/2/22/";
// debug($klucz);
$parts = explode('/',$klucz);
debug($klucz);
debug($parts);
$x = 0;
$last = $parts[count($parts)-1];
$arr = array();
while ($bottom = array_pop($parts)) {
if($bottom != $last){
$arr = array($bottom => $arr);
$x++;
}else{
array_push($arr, $cache);
}
}
// $arr['child'] = $cache;
debug($arr);
// exit;
// print_r($output);
// exit;
// self::buildKey($k);
// print_r($c2);
echo "<br />";
}
}
else {
$klucz = $klucz.'/'.$key;
if (is_array($item) && self::findKey($item, $keySearch,$app,$klucz)) {
// return true;
}
}
}
// return false;
}
我需要从循环创建数组。从 mysql 我得到数据作为对象,这个数据视图是这样的:
|id|nazwa|链接|父|
|1|abc|abcc|0|
|2|aaa|bbb|1|
|3|aas|bbc|2|
|4|asdasd|adsasd|2|
|5|asdasd|serae|4|
|6|rywer|twet|0|
现在我需要使用 mysql 中的数据的数组并将其显示在数组中,如下所示:
array(
[1]=>array(
id=>1,
nazwa=>abc
link=>abcc
child=>array(
[2]=>array(
id=>2,
nazwa=>aaa
link=>bbb
child=>array(
[3]=>array(
id=>3,
nazwa=>aas
link=>bbc
child=>array(
)
),
[4]=>array(
id=>4,
nazwa=>asdasd
link=>adsasd
child=>array(
[5]=>array(
id=>5,
nazwa=>asdasd
link=>serae
child=>array(
)
),
)
),
)
)
)
),
[6]=>array(
id=>6,
nazwa=>rywer
link=>twet
child=>array(
)
),
)
我认为只是一个简单、好的循环或函数,但我无法处理它。
【问题讨论】:
标签: php mysql arrays multidimensional-array