在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。最后结果输出如下:
firstname: tomage: 18gender: malesecondname: jerryage: 19gender: 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二维数组的值怎么拿的详细内容。
