2012-08-02 103 views
-3

可能重複:
How to extract data out of a specific PHP array如何讀取數組中的數據?

我有我試圖來從特定鍵中的所有元素的數組的關鍵是shard3。 結果應該是'user'=>'root','password'=>'3', 'db'=>'test', 'port'=>3307

private $shard_list = array ( 
     'shard1' => array('host'=>'127.0.0.1', 
    'user'=>'root', 
    'password'=>'1', 
    'db'=>'test', 
    'port'=>3306 
    ), 
    'shard2' => array('host'=>'127.0.0.2', 
     'user'=>'root', 
     'password'=>'2', 
     'db'=>'test', 
     'port'=>3307 
    ), 
    'shard3' => array('host'=>'127.0.0.3', 
    'user'=>'root', 
    'password'=>'3', 
    'db'=>'test', 
    'port'=>3307 
    ), 
    'shard4' => array('host'=>'127.0.0.4', 
     'user'=>'root', 
     'password'=>'4', 
     'db'=>'test', 
     'port'=>3307 
    ) 

我想讀的所有元素shard3。讀取所有元素的方式是什麼?

+3

詢問之前請閱讀[PHP手冊](http://www.php.net/manual/en/langref.php)。 – Jocelyn 2012-08-02 23:34:33

+0

並閱讀您的權利... – 2012-08-02 23:34:51

+0

$ data = $ shard_list ['shard3']; – mrok 2012-08-02 23:34:53

回答

0

好吧,它看起來像你在一個類中定義它。因爲您將其定義爲private屬性,所以無法在班級以外訪問它。如果您需要從外部範圍訪問它,請使用getter方法。

要從課堂內部訪問它,你可以簡單地按照Dan的說法做$this->shard_list['shard3']

萬一你需要從外部範圍訪問它,你不希望將屬性設置爲public,像這樣定義一個「吸」的方法:

public function getShard_list() 
{ 

return $this->shard_list; 

} 

功能上述應坐在你的班級。

然後調用它從外範圍:

$shardList = $myClassInstance->getShard_list(); 

print_r($shardList['shard3']); 
0

在回答之前,我建議開始閱讀基本的PHP功能。

對於這個問題,因爲你的變量前面有private,我假定這是一個類你裏面的屬性,您可以通過使用$this->shard_list['shard3']訪問它。

+0

永遠不要鏈接到該網站! http://w3fools.com/ – 2012-08-02 23:41:56