在php中,二维数组可以看做一个数组中嵌套了另一个数组。其中,外层数组的key可以是任何类型的数据,而value则是一个数组。而内层数组的key同样可以是任何类型的数据,而value则可以是任何类型的数据。在实际开发中,二维数组在很多场合下被广泛使用。有时候需要拿到二维数组中的值,这时候就需要用到相关函数。
一、访问二维数组的值
访问二维数组的值需要依次指定下标,即通过指定外层数组的key和内层数组的key来访问二维数组中的值。下面是一个示例:
$arr = array( "first" => array( "name" => "Tom", "age" => 18, "gender" => "male" ), "second" => array( "name" => "Jerry", "age" => 19, "gender" => "female" ) ); echo $arr["first"]["name"];
在上述示例中,我们定义了一个二维数组$arr,其中有两个元素,分别是“first”和“second”。每一个元素都是一个数组,包含了不同的键值对。我们通过指定下标来访问“first”这个元素中“name”这个键所对应的值。结果应该是“Tom”。
二、遍历二维数组
遍历二维数组需要使用循环语句。由于二维数组嵌套了另一个数组,因此我们需要使用两个循环语句,分别用于遍历外层数组和内层数组。下面是一个示例:
$arr = array( "first" => array( "name" => "Tom", "age" => 18, "gender" => "male" ), "second" => array( "name" => "Jerry", "age" => 19, "gender" => "female" ) ); foreach ($arr as $key1 => $value1){ echo $key1 . '<br>'; foreach ($value1 as $key2 => $value2){ echo $key2 . ': ' . $value2 . '<br>'; } echo '<br>'; }
在上述示例中,我们使用两个foreach循环语句。在外层循环中,$key1指代的是外层数组中元素的key,而$value1则指代的是外层数组中元素的value(也就是内层数组)。在内层循环中,$key2指代的是内层数组中元素的key,而$value2则指代的是内层数组中元素的value。最后结果输出如下:
first name: Tom age: 18 gender: male second name: Jerry age: 19 gender: female
三、通过关键字查找二维数组的值
在实际的开发中,有时候我们需要对二维数组进行查询操作。我们可以通过一些内置函数来实现对数组的操作。在这里,我们将通过array_column()函数来实现对二维数组的操作。
array_column(array $input, mixed $column_key [, mixed $index_key = null])
该函数的作用是将一个二维数组按照指定的key取出来,返回一个一维数组。其中,$input参数为需要处理的二维数组,$column_key参数为需要取出来的key,$index_key参数为需要做为新数组的key的key。
下面是一个示例:
$arr = array( array("name"=>"Tom", "age"=>18, "gender"=>"male"), array("name"=>"Jerry", "age"=>19, "gender"=>"female"), array("name"=>"Lucy", "age"=>17, "gender"=>"female") ); $names = array_column($arr, 'name'); $genders = array_column($arr, 'gender'); print_r($names); print_r($genders);
在上述示例中,我们定义了一个二维数组$arr,其中每个元素都包含了“name”、“age”和“gender”三个key。我们使用array_column()函数来分别取出所有“name”和所有“gender”所对应的值。最后输出结果如下:
Array ( [0] => Tom [1] => Jerry [2] => Lucy ) Array ( [0] => male [1] => female [2] => female )
在开发中,对于二维数组的操作需要根据实际情况进行。掌握这些操作,将有利于我们在开发中的使用。
以上是php二维数组的值怎么拿的详细内容。更多信息请关注PHP中文网其他相关文章!