所以我有以下功能:
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,'haha','hoho','hihi');
所以我不需要创建新的变量或我不想,但我想修改已经存在的数组;
注:我知道有些函数像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']);