所以我有以下功能:
function push_to_array()
{
$array_of_data = func_get_arg(0);
for($i = 1; $i < func_num_args(); ++$i){
$array_of_data[] = func_get_arg($i);
}
return $array_of_data;
}
我可以将它与现有数组一起使用:$array = ['once','two','three'];
函数用于将数据插入现有数组。
所以最后的调用看起来像:
$newArray = push_to_array($array,'haha','hoho','hihi');
现在我想把调用转换成
push_to_array($array,'哈哈','hoho','hihi');
所以我不需要创建新变量或者我不想创建新变量,但我想修改已经存在的数组;
PS:我知道有array_push这样的函数,但是我想自己学。
最佳答案
您可以只使用相同的变量:
$array = push_to_array($array,'haha','hoho','hihi');
但要回答这个问题,您需要使用 Passing by Reference ,因此您必须将其作为参数包含在内:
function push_to_array(&$array_of_data)
{
for($i = 1; $i < func_num_args(); ++$i){
$array_of_data[] = func_get_arg($i);
}
}
然而,这将实现与第一个示例相同的效果:
$array = array_merge($array,['haha','hoho','hihi']);
关于PHP - push_to_array 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46286181/