【发布时间】:2013-03-23 18:30:55
【问题描述】:
我收到此错误: 调用时传递引用已被弃用;如果您想通过引用传递它,请修改 ip_valid() 的声明。
在这些代码行的某个地方。问题是我在 PHP 方面没有那么强,无法弄清楚我需要修改什么来修复它。
任何建议都将不胜感激。
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'];
}
提前问好
韦恩
【问题讨论】:
-
这里:
if ( ip_valid ( &$_SERVER [ $c ] ) ) { -
我看到答案说明 只需删除与号,这当然会按值传递。可以假设它应该通过引用传递是有原因的,但没有说明
ip_valid的声明也可以更改为ip_valid(&$ip_to_check);
标签: php