如果我有一个结构如下的数组:
$currencies = Array (7)
0 => Array (3)
id => "11"
code => "CHF"
default => "0"
1 => Array (3)
id => "13"
code => "USD"
default => "0"
2 => Array (3)
id => "12"
code => "EUR"
default => "1"
当默认值等于'1'时,我想检索'代码',例如:
if($currencies.default == 1 ){
$currency_code = EUR
}
这只是我的意图的一个粗略的例子,我不知道怎么做。有人能帮我吗?
这应该可以为您工作:
首先遍历包含array_filter()
的每个元素,并过滤掉不包含default => 1
的所有子数组。
在此之后,只需从之前使用array_column()
的过滤数组中抓取列code
,例如
<?php
$result = array_column(array_filter($currencies, function($v){
return $v["default"] == 1;
}), "code");
print_r($result);
?>
输出:Array
(
[0] => EUR
)
尝试使用 array_filter () 。例子:
$result = array_filter($currencies, function($v){return $v['default'] == 1 ? $v['code'] : false;});
print '<pre>';
print_r($result);
print '</pre>';