array_pop() 在从 call_user_func() 调用时需要不推荐使用的按引用调用


array_pop() requires deprecated call-by-reference when invoked from call_user_func()

call_user_func('array_pop', $myarray);

给出"参数 1 到 array_pop(( 预期为引用,给定值",而

call_user_func('array_pop', &$myarray);

给出"调用时间按引用传递已被弃用"。

那我应该怎么做呢?我在 Windows 上的"PHP 版本 5.3.5"上,并且不赞成使用警告

谢谢!

要么直接调用它:

array_pop($myarray);

或者使用 call_user_func_array() ,它接受引用数组作为参数,而不会对调用时按引用大喊大叫:

call_user_func_array('array_pop', array(&$myarray));

这不会引发有关调用时按引用传递的警告的原因是,实际上没有发生此类情况。按引用传递变量与创建引用数组并按值传递该数组之间存在细微差别。