2017-04-19 64 views
0

公告:未定義的屬性:在我酒吧:: $酒館:\ XAMPP \ htdocs中上線37 NULL未定義的屬性與類PHP

\ test.php的,我認爲我做了什麼權利,但我不知道爲什麼我有這樣的問題?有人能告訴我我做錯了什麼,我會很感激。

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); 
+3

'的var_dump(pub- $>酒館);'沒有'類中定義的酒吧是 –

+0

我的錯誤我edite我的帖子抱歉,但同樣的問題 – MAXX3

+1

你忘了添加pub'屬性'()在'getip'之後。它應該是'$ pub-> getip()'而不是'$ pub-> getip' –

回答

2

沒有財產酒吧,你可能指的是$pub->getip()

這將要求你改變這一行:

if (validip($ip) !== false) { 

這樣:

if ($this->validip($ip) !== false) { 

看到它無法找到validip在這方面。

Read about the basics of OOP in PHP here.