注意:未定义的属性:第37行的I:\ xampp \ htdocs \ test.php中的Pub :: $ pub NULL
我觉得我做得对,但我不知道为什么会有这样的问题?谁能告诉我我做错了什么我会感激的。
class Pub {
function getip()
{
if (isset($_SERVER['HTTP_CF_CONNECTING_IP']))
$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_CF_CONNECTING_IP'];
foreach (array('HTTP_CLIENT_IP', 'HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_X_CLUSTER_CLIENT_IP', 'HTTP_FORWARDED_FOR', 'HTTP_FORWARDED', 'REMOTE_ADDR', 'HTTP_CF_CONNECTING_IP') as $key)
{
if (array_key_exists($key, $_SERVER) === true) {
foreach (explode(',', $_SERVER[$key]) as $ip) {
if (validip($ip) !== false) {
return $ip;
}
}
}
}
}
function validip($ip)
{
return (!preg_match("/^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$/", $ip)) ? FALSE : TRUE;
}
}
$pub = new Pub;
var_dump( $pub->getip);
答案 0 :(得分:2)
没有属性酒吧,您可能指的是$pub->getip()
。
这需要你改变这一行:
if (validip($ip) !== false) {
到此:
if ($this->validip($ip) !== false) {
看到它无法在该上下文中找到validip。