我有一个像:
这样的数组$profile_typeid [] = custom_profile(
0 => "44258",
1 => "44259",
);
和另一个数组$meta_data[]
,我想推送这个数组$profile_typeid []
。在此之前,它应该检查$meta_data[]
是否包含$profile_typeid []
。如果没有,那么添加其他明智的应该覆盖。
如何在PHP中获取内容
我试过了:
if(!in_array($meta_data,$profile_typeid,true)){
array_push($meta_data, $profile_typeid);
}
我有两个数组的var_dump,比如
`阵列 ' custom_profile_type' => 排列 0 =>字符串' 39242' (长度= 5)
null`
答案 0 :(得分:0)
变化:
in_array($meta_data,$profile_typeid, true)
到
in_array($profile_typeid,$meta_data)
在语法中,您正在搜索针头中的干草堆。 (可以这么说)
http://php.net/manual/en/function.in-array.php
<强>更新强>
添加数组使用array_push。
if(!in_array($profile_typeid,$meta_data)){
array_push($meta_data, $profile_typeid);
}
else{
$meta_data['custom_profile_type'] = $profile_typeid;
}
删除strict
子句。在这种情况下,我认为不需要它。
这应该有用。
答案 1 :(得分:0)
你可以使用下面给出的代码来做到这一点......
$profile_typeid = array(
0 => "44258",
1 => "44259",
);
$meta_data = array(
0 => "34567",
1 => "67890",
2 => "44258"
);
foreach($profile_typeid as $pro_type){
if(!in_array($pro_type,$meta_data)){
array_push($meta_data, $pro_type);
}
}
print_r($meta_data);
您使用的in_array(array(), $array, true); // false
哪个是完全错误的,请查看手册了解更多详情http://php.net/manual/en/function.in-array.php
祝你好运..