如何读取数组中的数据?

问题描述:

可能重复:
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

好吧,它看起来像你在一个类中定义它。因为您将其定义为private属性,所以无法在班级以外访问它。如果您需要从外部范围访问它,请使用getter方法。

要从课堂内部访问它,你可以简单地按照Dan的说法做$this->shard_list['shard3']

万一你需要从外部范围访问它,你不希望将属性设置为public,像这样定义一个“吸”的方法:

public function getShard_list() 
{ 

return $this->shard_list; 

} 

功能上述应坐在你的班级。

然后调用它从外范围:

$shardList = $myClassInstance->getShard_list(); 

print_r($shardList['shard3']); 

在回答之前,我建议开始阅读基本的PHP功能。

对于这个问题,因为你的变量前面有private,我假定这是一个类你里面的属性,您可以通过使用$this->shard_list['shard3']访问它。

+0

永远不要链接到该网站! http://w3fools.com/ – 2012-08-02 23:41:56