我有两个数组,它们是
$key = array(
"site_url" => "Site URL",
"current_date" => "Current Date",
"user_name" => "User name",
"name" => "Name of the user",
"password" => "Password of user",
"user_email" => "Email address of new user"
);
$tmpl_name = array ("name","url","current_date","email");
我想检查第一个数组的键值中是否存在第二个数组值。如果不是,则显示与第一个阵列不同的阵列。
array_diff
与array_keys
结合使用即可。试试这个:
$missing = array_diff($tmpl_name, array_keys($key));
输出为:
array(2) {
[1] = string(3) "url"
[3] = string(5) "email"
}
或者你可以交换它们:
$missing = array_diff(array_keys($key), $tmpl_name);
获取第一个数组中不在第二个值中的键。
array(4) {
[0] = string(8) "site_url"
[2] = string(9) "user_name"
[4] = string(8) "password"
[5] = string(10) "user_email"
}
$key = array(
"site_url" => "Site URL",
"current_date" => "Current Date",
"user_name" => "User name",
"name" => "Name of the user",
"password" => "Password of user",
"user_email" => "Email address of new user"
);
$tmpl_name = array ("name","url","current_date","email");
foreach($tmpl_name as $name) {
if(array_key_exists($name, $key)) {
// exists
} else {
//does not exist in key
}
}