我有这种情况,当我在函数内部有 array_push 然后我需要在 foreach 填充新数组的内部运行它。不幸的是,我不明白为什么这不起作用。这是代码:
<?php
$mylist = array('house', 'apple', 'key', 'car');
$mailarray = array();
foreach ($mylist as $key) {
online($key, $mailarray);
}
function online($thekey, $mailarray) {
array_push($mailarray,$thekey);
}
print_r($mailarray);
?>
这是一个示例函数,它具有更多功能,这就是为什么我需要保留这个想法。
谢谢。
最佳答案
默认情况下,PHP 将数组视为一种“值类型”(写入时复制)。您可以通过引用传递它:
function online($thekey, &$mailarray) {
$mailarray[] = $thekey;
}
关于php - array_push 在函数中不起作用,PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20169327/