如果数组默认值为true,如何显示其内容


if an array default is true, how to display his content?

如果我有一个结构如下的数组:

$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>';