如果数组默认为true,如何显示他的内容?

时间:2015-07-27 16:28:04

标签: php arrays multidimensional-array associative-array

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

$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'时检索'code',如:

if($currencies.default == 1 ){
$currency_code = EUR
}

这只是我意图的一个粗略的例子,我不知道该怎么做。任何人都可以帮助我吗?

2 个答案:

答案 0 :(得分:0)

这应该适合你:

首先,您使用array_filter()浏览每个元素并过滤掉所有这些不具有default => 1的subArrays。

在此之后,只需从之前使用array_column()从过滤后的数组中抓取列code,例如

<?php

   $result = array_column(array_filter($currencies, function($v){
       return $v["default"] == 1;
   }), "code");

   print_r($result);

?>

输出:

Array
(
    [0] => EUR
)

答案 1 :(得分:0)

尝试使用array_filter()。例如:

$result = array_filter($currencies, function($v){return $v['default'] == 1 ? $v['code'] : false;});

print '<pre>';
print_r($result);
print '</pre>';