从多维数组PHP中搜索和检索

Ada*_*dam 0 php arrays

我在PHP中有一个多维数组,我试图搜索一个特定的值(url),然后检索一个关联的值(value).如果找不到,我还需要转移到其他地方.

array(2) { 
  [0]=> array(2) { 
    ["url"]=> string(7) "fareham" 
    ["value"]=> string(7) "Fareham" 
  } 

 [1]=> array(2) { 
    ["url"]=> string(11) "southampton" 
    ["value"]=> string(11) "Southampton" 
  } 
}
Run Code Online (Sandbox Code Playgroud)

我一直在尝试使用array_key_exists,并且检查它的设置并且刚刚出现null!任何指出最佳实践的指针都会有很多不足之处.

Nig*_*Ren 5

用于array_column()通过url列索引数据,然后isset()用来检查值是否存在...

$data = array_column($data, "value", "url");
$search = 'southampton';

$value = isset($data[$search])?$data[$search]:"not found";

echo $value;
Run Code Online (Sandbox Code Playgroud)

或者对于PHP 7+,您可以使用null合并运算符(??)

$value = $data[$search]??"not found";
Run Code Online (Sandbox Code Playgroud)