php 获取相反值,php – 以相反的顺序从单向数组中获取数据
你不是在尋找陣列的反面,但是你正在尋找相反的東西.
首先要更好地理解這種逆轉可能會對你有所幫助.
您需要每個元素的父元素.如果您遍歷下一個,則父級始終是前一個.因此,如果您將前一個元素添加為父元素,那么數組的最后一個元素就是您要查找的元素.
所以聽起來很直接.更難的部分是用所謂的變量別名/引用來表達它.
讓我們添加所有父項,并在遍歷數組時,在引用它之后刪除“下一個”條目:
/* traverse the path on 'next' and keep previous to set 'parent' of current */
$walk = &$array; // start at root node
while ($walk) {
if (isset($previous)) {
$walk['parent'] = &$previous;
}
$previous = &$walk;
$hasNext = array_key_exists('next', $walk);
if ($hasNext) {
$walk = &$walk['next'];
unset($previous['next']);
} else {
break;
}
}
unset($previous);
寫入最后一個元素然后將包含您正在尋找的數組.最后一個元素是$步行:
print_r($walk);
哪個給你(Demo):
Array
(
[data5] =>
[parent] => Array
(
[data4] =>
[parent] => Array
(
[data3] =>
[parent] => Array
(
[data2] =>
[parent] => Array
(
[data1] =>
)
...
)
希望這是有幫助的,可以理解的.
總結
以上是生活随笔為你收集整理的php 获取相反值,php – 以相反的顺序从单向数组中获取数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php phar包require报错,p
- 下一篇: linux下安装配置apache+php