PHP中是否有办法将某些迭代移动到循环中的某个位置?
例如我有一个数组:
1, 2, 3, 4, 5, 6, 7, 8, 9
我们有一个1到9的数组,但我想在迭代结束时放置5,所以结果如下:
1
2
3
4
6
7
8
9
5
答案 0 :(得分:2)
目前还不清楚你在问什么。无论如何,您可以使用unset
和[] operator
$element = $array[4];
unset($array[4]);
$array[] = $element;
直播:http://codepad.org/cWZHjJwy
如果您只需要搜索5,那么只需使用array_search()
获取密钥:
$key = array_search(5,$array);
unset($array[$key]);
$array[] = 5;
答案 1 :(得分:1)
下面的代码将找到数字5的位置,将其删除并将其添加到数组的末尾。最后,我们迭代值。
$numbers = range(1, 9);
// find the position of value 5
$position = array_search(5, $numbers);
// save the value and remove from array
$value = $numbers[$position];
unset($numbers[$position]);
// add it back at the end
$numbers[] = $value;
// print the values
foreach ($numbers as $number) {
echo $number . ' ';
}
1 2 3 4 6 7 8 9 5