标题可能有点令人困惑,但是如何处理数组并根据给定的值返回键的值。这基本上是用于将数据库元数据转换为人类可读格式的数组库。
示例:
$countries = array('US'=>'United States','MX'=>'Mexico');
上面的数组将被视为数组库。因此,当我进行查询时,在我的结果中我只有两个国家/地区代码,然后我需要将其转换为人类可读的格式。是否有一个功能,如果我发送它两个国家代码,它将返回人类可读的格式。然后,此函数需要与其他数组库重用。示例功能:
function covert_to_human($key, $array_library)
答案 0 :(得分:1)
function convert_to_human($key, $library) {
return array_key_exists($key, $library) ? $library[$key] : false;
}
答案 1 :(得分:1)
这将返回$ array_library中与$ key相关联的值(如果存在),否则将返回一个可选的$ default,如果该键不在$ array_library中
function convert_to_human($key, $array_library, $default = null){
if (array_key_exists($key, $array_library)){
return $array_library[$key];
}
return $default;
}
如果您想要一个简单的方法来定义和维护查找,您可以将此概念包装在一个类中,并使用parse_ini_file来为数据设定种子。
class Lookup{
protected $data;
public function __construct($iniFile){
$this->data = parse_ini_file($iniFile);
}
public function lookup($key, $default){
return isset($this->data[$key])?$this->data[$key]:$default;
}
}
要使用,您可以将查找创作为
; Countries.ini
US = "United States of America"
MS = "Mexico"
CA = "Canada"
然后创建一个实例并使用您的类
$countryLookup = new Lookup("Countries.ini");
echo $countryLookup->lookup("MX", "Unknown Country");