【发布时间】:2015-05-22 08:37:48
【问题描述】:
我收到一个错误: 严格的标准:只能通过引用传递变量
$string = array_shift(array_keys($_REQUEST));
我该如何纠正?
【问题讨论】:
标签: php
我收到一个错误: 严格的标准:只能通过引用传递变量
$string = array_shift(array_keys($_REQUEST));
我该如何纠正?
【问题讨论】:
标签: php
$tmpArray = array_keys($_REQUEST);
$string = array_shift($tmpArray);
需要临时数组:(
【讨论】:
将array_keys($_REQUEST)的结果赋值给一个变量,并将该变量传递给array_shift:
$var = array_keys($_REQUEST);
$string = array_shift($var);
【讨论】:
您可能已将 PHP 设置为在严格模式下运行,或者这可能是默认行为。
由于 array_keys($_REQUEST) 的输出不是变量,并且在严格模式下,这将产生警告。这种行为非常不直观,因为 array_keys($_REQUEST) 方法返回一个数组值。
所以要解决这个问题,请将 array_keys($_REQUEST) 的输出分配给一个变量,然后像下面这样使用它:
$keys = array_keys($_REQUEST);
$shift = array_shift($keys);
【讨论】: