【问题标题】:PHP: Find a value in an array and return another value once foundPHP:在数组中查找一个值并在找到后返回另一个值
【发布时间】:2012-03-27 08:00:04
【问题描述】:

这里完全是一个 PHP 菜鸟,所以对于可能的基本问题感到抱歉 - 这是我正在努力实现的目标。我有一个动态生成的数组,看起来像:

$crumbs = 

(

[home] => Array ( 
[label] => Home 
[title] => Go to Home Page 
[first] => 1 
[last] => 
[readonly] => 
) 

[something] => Array ( 
[label] => Shop 
[title] => 
[first] => 
[last] => 1
[readonly] => 
) 

) 

我正在尝试弄清楚如何编写一些内容并搜索(在任何深度)以查看哪个数组的键“last”设置为值 1。当找到具有键的数组时,然后我需要回显 last = 1 的数组的“标签”键。每个数组将始终有一个标签键,并且只有一个数组将“最后”键设置为 1。一如既往地感谢帮忙!

【问题讨论】:

  • 您说at any depth,但您的示例显示lastfirst 始终处于相同的深度。是否需要递归搜索?

标签: php arrays search echo key


【解决方案1】:
$iterator = new RecursiveArrayIterator($crumbs);

foreach($iterator as $arr) {
  if($arr['last'] == 1) {
    echo $arr['label'];
  }
}

【讨论】:

    【解决方案2】:

    【讨论】:

      【解决方案3】:

      使用foreach循环遍历数组,或者使用in_array函数查看数组是否包含值1

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-12-19
        相关资源
        最近更新 更多