Php IP不推荐使用按引用传递呼叫时间
我得到这个错误: 不推荐使用按引用传递调用时间;如果要通过引用传递,请修改ip_valid()的声明 在这些代码行的某个地方。问题是我在PHP方面并没有那个么强,并没有弄清楚需要修改什么来修复它 任何建议都将不胜感激Php IP不推荐使用按引用传递呼叫时间,php,Php,我得到这个错误: 不推荐使用按引用传递调用时间;如果要通过引用传递,请修改ip_valid()的声明 在这些代码行的某个地方。问题是我在PHP方面并没有那个么强,并没有弄清楚需要修改什么来修复它 任何建议都将不胜感激 function getIP () { $check = array( 'HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_FORWARDED_FOR', 'HTTP_FORW
function getIP ()
{
$check = array(
'HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_FORWARDED_FOR',
'HTTP_FORWARDED', 'HTTP_VIA', 'HTTP_X_COMING_FROM', 'HTTP_COMING_FROM',
'HTTP_CLIENT_IP'
);
foreach ( $check as $c ) {
if ( ip_valid ( &$_SERVER [ $c ] ) ) {
return ip_first ( $_SERVER [ $c ] );
}
}
return $_SERVER['REMOTE_ADDR'];
}
提前付款
韦恩尝试不使用符号:
ip_valid ( $_SERVER [ $c ] )
就像你强迫的那样
虽然,很明显,在传递同一个东西时,你没有先调用
ip\u
,所以我想知道是什么让你认为它是正确的,为什么你在第二个例子中做得不同 只需从ip\u有效(&$\u服务器[$c])
中删除&
,此处:if(ip\u有效(&$\u服务器[$c])){
我看到的答案是只删除符号,它当然会通过值传递。人们可能会认为,它应该通过引用传递是有原因的,没有说明ip_valid
的声明也可以更改为ip_valid(&$ip_to_check)
成功了..多亏了你们两个..成功了..多亏了你们两个。。