array_shift:只有变量应该通过php中的引用错误传递

时间:2015-05-22 08:37:49

标签: php

我收到了一个错误: 严格标准:只有变量应通过引用传递

 $string =  array_shift(array_keys($_REQUEST));

我该如何纠正?

3 个答案:

答案 0 :(得分:7)

$tmpArray = array_keys($_REQUEST);
$string =  array_shift($tmpArray);

需要临时数组:(

答案 1 :(得分:1)

array_keys($_REQUEST)的结果分配给变量并将该变量传递给array_shift

$var = array_keys($_REQUEST);
$string =  array_shift($var);

答案 2 :(得分:0)

您可能有一个设置PHP以在严格模式下运行,或者它可能是默认行为。

由于array_keys($ _ REQUEST)的输出不是变量,并且在严格模式下,这将生成警告。这种行为非常不直观,因为array_keys($ _ REQUEST)方法返回一个数组值。

因此,要解决此问题,请将array_keys($ _ REQUEST)的输出分配给变量,然后像下面一样使用它:

dialog