2014-01-05 78 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