use*_*172 -1 php arrays multidimensional-array
我该怎么做这个数组:
array(2) {
[0]=>
array(1) {
["plz"]=>
string(4) "4460"
}
[1]=>
array(1) {
["plz"]=>
string(4) "4000"
}
}
Run Code Online (Sandbox Code Playgroud)
变成这样的东西只需要一个数组键中的值无关紧要:
array(2) {
[0]=>
string(4) "4460"
[1]=>
string(4) "4000"
}
Run Code Online (Sandbox Code Playgroud)
是否有辅助功能或可以帮助的东西?
如果事先知道密钥:
如果您使用的是PHP 5.5+,则可以使用密钥array_column()提取所有子数组plz:
$result = array_column($array, 'plz');
Run Code Online (Sandbox Code Playgroud)
array_map()如果您使用的是旧版本的PHP,则可以使用相同的方法:
$result = array_map(function($sub) { return $sub['plz']; }, $array);
Run Code Online (Sandbox Code Playgroud)
如果事先不知道密钥:
$result = array();
array_walk_recursive($array, function($v) use (&$result) { $result[] = $v; });
Run Code Online (Sandbox Code Playgroud)
请注意,它以递归方式工作,因此如果您有更复杂的数组,它仍然可以工作.
或者,您可以使用RecursiveIteratorIterator类:
$result = array();
$iterator = new RecursiveIteratorIterator(new RecursiveArrayIterator($array));
foreach($iterator as $value) {
$result[] = $value;
}
Run Code Online (Sandbox Code Playgroud)
有关更多详细信息,请参阅此问题:RecursiveIteratorIterator如何在PHP中工作?
| 归档时间: |
|
| 查看次数: |
2033 次 |
| 最近记录: |