这是我的数组$data
:
array(3) {
[0]=>
string(4) "icon"
[1]=>
string(6) " image"
[2]=>
string(12) " description"
}
我试着找出我的数组中是否存在值:
if (in_array("description", $data))
{
echo "Match found";
}
else
{
echo "Match not found";
}
但我的结果是Match not found
我不知所措。
答案 0 :(得分:2)
在if语句之前添加此行$data= array_map('trim', $data);
。所以最终的代码将是
$data = array('icon',' image',' description');
$data= array_map('trim', $data);
if (in_array("description", $data)){
echo "Match found";
}
else{
echo "Match not found";
}
答案 1 :(得分:2)
Php函数array_search()
正是您所需要的。
以下是示例
if( array_search('description', $array) ){
echo 'Exist';
}else{
echo 'Not exists'
}
要了解有关array_search()的更多信息,请使用此链接 http://php.net/manual/en/function.array-search.php
答案 2 :(得分:1)
试试这个,
if (in_array(" description", $data))
{
echo "Match found";
}
else
{
echo "Match not found";
}
OR
$data= array_map('trim', $data);
if (in_array("description", $data))
{
echo "Match found";
}
else
{
echo "Match not found";
}
要么工作,要检查你是否有描述元素的空间。
试一试,这样可行。
答案 3 :(得分:1)
string(12)"说明" 这里有空格但(in_array("说明",$ data))没有任何空间。那么,你怎么可能_____?
首先,您必须使用修剪功能修剪所有描述
$data=array_map("trim",$data);
然后使用 in_array 来获得期望结果..
答案 4 :(得分:0)
查看您的数组$ data包含description
和image
等值,其中包含一个额外空格。
创建数组时使用trim
函数来避免空格,并且代码可以正常工作。
if (in_array(" description", $data)) {
echo "Match found";
} else {
echo "Match not found";
}