我有一个多维数组,我正在尝试搜索特定值 ( url),然后在同一行 () 中检索另一个值value。如果找不到,我还需要转移到其他地方。
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" } }
我一直在尝试array_key_exists()并isset()检查它是否已设置并且即将推出null!
array_key_exists()
isset()
null
例如,如果我搜索fareham,我想返回Fareham。如果我搜索nottingham,我期待null。
fareham
Fareham
nottingham
如何隔离合格值?
用于array_column()按 url 列索引数据,然后用于isset()检查值是否存在…
array_column()
$data = array_column($data, "value", "url"); $search = 'southampton'; $value = isset($data[$search])?$data[$search]:"not found"; echo $value;
或者对于 PHP 7+,您可以使用空合并运算符 (??)
$value = $data[$search]??"not found";