从多维数组中获取值



我有一个脚本,它创建了一个格式如下的数组

  $named_array["vehicles"][0]['vehicle'] = "i100-1 "  ;
  $named_array["vehicles"][1]['vehicle'] = "i100-2 "  ;
  $named_array["vehicles"][2]['vehicle'] = "i100-46 "  ;

我想在脚本中稍后做的是从$named_array获取索引值[0-1-2等]但我只有值(i100-1等)作为查询选项,这是这样我可以改变它以后。我想实现的是,$named_array的索引值是多少,其中值是i100-2

最后输出到json。

我希望这有意义!请帮忙好吗?

function complex_index_of($named_array, $val){
    for($i=0, $n=count($named_array['vehicles']); $i<$n; $i++){
        if ($named_array['vehicles'][$i]['vehicle'] == $val)
            return $i;
    }
    return -1;
}

echo complex_index_of($named_array, 'i100-2 ');
// output: 1

尝试这样做(可能创建一个函数,如果您需要这样做不止一次)

$needle = 'i100-1';
$vIndex = -1;
foreach ($named_array["vehicles"] as $index => $data) {
    if($data['vehicle'] == $needle) {
        $vIndex = $index;
        break;
    }
}

相关内容

  • 没有找到相关文章