我有一个多维国家数组,其中包含:
针是countryCode,而大海捞针是$countriesArray。您将如何搜索字符串(countryCode)并返回相应的名称和标志。这个数组构造得很糟糕吗?.
数组
$CountriesArray = [
['code' => 'bj', 'name' => 'Benin', 'flag' => 'flag flag-bj'],
['code' => 'bw', 'name' => 'Botswana', 'flag' => 'flag flag-bw'],
['code' => 'cg', 'name' => 'Congo', 'flag' => 'flag flag-cg'],
// etc.
];
同样的问题在here,基本上你只需要循环遍历所有不同的数组。 在下面的示例中,$return_val 将是国家/地区的数组。
$search_term = 'cg';
foreach($countriesArray as $c_info){
if($c_info['code']==$search_term){
$return_val = $c_info;
}
}
for($i = 0; $i <= count($countriesArray); $i++){
if($countriesArray[$i]["code"] == "cg"){
return $countriesArray[$i]["name"];
}
}
这应该有效
每个版本:
foreach($countriesArray as $country){
if($country["code"] == "cg"){
...
}
}
示例功能:
function multiDimenArraySearch($n,$h){
foreach($h as $arr){
if($arr['code'] == $n){
return $arr;
}
}
}
$search = multiDimenArraySearch("cg",$countriesArray);
$name = $search["name"];
搜索值是数组键:
foreach($h as $key => $value){
if($key == "cg") return $value;
}