Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php in_array()即使值确实存在也不起作用_Php_Wordpress - Fatal编程技术网

Php in_array()即使值确实存在也不起作用

Php in_array()即使值确实存在也不起作用,php,wordpress,Php,Wordpress,也许已经太晚了,我变得很笨,但是in_array() 如果(用户是否已登录()): $user\u id=get\u current\u user\u id(); $recommendedHost=get_user_meta($user_id,'author_极力推荐'); var_转储(推荐主机)//数组(1){[0]=>数组(2){[0]=>字符串(2)“48”[1]=>字符串(2)“14”} var_dump($eventHostID);//内部(14) if(在数组中($eventHos

也许已经太晚了,我变得很笨,但是
in_array()

如果(用户是否已登录()):
$user\u id=get\u current\u user\u id();
$recommendedHost=get_user_meta($user_id,'author_极力推荐');
var_转储(推荐主机)//数组(1){[0]=>数组(2){[0]=>字符串(2)“48”[1]=>字符串(2)“14”}
var_dump($eventHostID);//内部(14)
if(在数组中($eventHostID,$recommendedHost)){
//$eventRecommended=true;
回应“是”;
}否则{
回应‘否’;
}
//结果:没有
endif;

我还尝试将
int
转换为
str
,但这并没有改变预期的效果,因为默认情况下,
in_array()
$needle
的数据类型不匹配,
in_array()
在多维数组上不起作用。我必须运行一个
foreach
循环来检查所有数组,然后检查每个一维数组中的指针

如果(用户是否已登录()):
$user\u id=get\u current\u user\u id();
$recommendedHosts=get_user_meta($user_id,'author_极力推荐');
$eventRecommended='';
foreach($recommendedHosts作为$recommendedHost){
if(在数组中($eventHostID,$recommendedHost)){
$eventRecommended=true;
}
}
endif;?>

$recommendedHost
是一个数组数组。您在中查找的值是
$recommendedHost[0]
,而不是
$recommendedHost
。或者,假设您的数组中只有一个数组(如上所述),您也可以在数组中执行类似于
的操作($eventHostID,$recommendedHost[0])
。你的答案当然也行。