可以在PHP中传递参数 - getallheaders()['X-Requested-With']
吗?我意识到getallheaders()
会返回所有标题,并且您需要迭代所有标题以检查特定标题,但上述方法有效。不知道为什么。
感谢。
答案 0 :(得分:1)
这不是参数传递,但getallheaders()
函数返回一个设置了X-Requested-With
键的数组。
function test() {
return ['key' => 'value'];
}
echo test()['key'];
答案 1 :(得分:1)
这不是“在括号外传递参数”,即访问函数返回的数组的特定索引。这只是简写:
$headers = getallheaders();
$headers['X-Requested-With'];
这也应该证明“需要迭代所有这些”的陈述是基于错误的假设/理解。
答案 2 :(得分:0)
函数getallheaders()
返回一个数组。所以getallheaders()['X-Requested-With']
与
$headers=getallheaders();
echo $headers['X-Requested-With'];
或
$headers=getallheaders();
foreach($headers as $key => $header){
if($key=='X-Requested-With')
echo $header;
}
所以无论如何你得到一个数组并且你正在打印数组值。
答案 3 :(得分:0)
getallheaders()
returns an associative array,所以是的,您可以按照上述方式提取该密钥的值。
当询问是否可以像这样传递参数时,我在想你正在谈论一个函数。是的,如果不需要变量,您可以将参数传递给函数而不声明变量。 I would, however, do a check if the key exists.
$headers = getallheaders();
if(array_key_exists('X-Requested-With', $headers)) {
echo func($headers['X-Requested-With']);
}
注意:上面我将getallheaders()
放入变量中,因为我将多次使用该函数的结果。