2014-01-05 83 views
0

目前我的文件結構看起來像這樣,一切工作正常。 但在我的home.php中,我想能夠拉出數組的一部分,例如用戶圖像。PHP函數OOP陣列拉

$connect->LoadInformation->image 

我該怎麼寫,或者改變我的代碼以使其工作?我真的希望這是有道理的。

home.php

 $connect->LoadInformation($_COOKIE['steamID']); 

class.php

 public function LoadInformation($steamID){ 

     $query = "SELECT * FROM user WHERE steamid = '$steamID'"; 
     $results = $this->con->get_results($query); 


     echo "<pre>"; 
     print_r($results); 
     echo "<pre>"; 
    } 

電流輸出

Array 
(
    [0] => Array 
     (
      [id] => 10 
      [steamid] => 76561198026169223 
      [profilestate] => 0 
      [steam_user] => Dz - Lol u mad? 
      [online] => 0 
      [signup] => 2014-01-05 17:28:15 
      [image] => http://media.steampowered.com/steamcommunity/public/images/avatars/b8/b85a568b25210a27a8413e4dc05c9f42a7cdaf22.jpg 
      [description] => 
      [active] => 0 
      [admin] => 0 
     ) 

) 
+0

無關,與OOP和開放的SQL注入。 – PeeHaa

回答

1

更改您的class.php這樣的..

public function LoadInformation($steamID){ 
     $query = "SELECT * FROM user WHERE steamid = '$steamID'"; 
     $results = $this->con->get_results($query); 
     return $results; 
    } 

和你home.php

$arr = $connect->LoadInformation($_COOKIE['steamID']); 
echo $arr[0]['image']; //<-- prints http://media.steampowered.com/steamcommunity/public/images/avatars/b8/b85a568b25210a27a8413e4dc05c9f42a7cdaf22.jpg 
2

只是把它轉換用它來反對使用(object) ...

public function LoadInformation($steamID){ 
    $query = "SELECT * FROM user WHERE steamid = '$steamID'"; 
    $results = $this->con->get_results($query); 
    return (object) array_shift($results); 
} 

兼:$connect->LoadInformation(...)->image;

而且我猜steamid將在表中是唯一,在這種情況下,隨便挑從數據庫查詢返回的第一個結果然後按照你的喜好使用它。

+0

你能解釋一下,我有其他所有工作,只需要這一點排序和即時消失! – Brent

+0

感謝您的配偶 – Brent