我需要检查来自2个不同数组的2个值是否相同。 我目前从mysql获得一个值,另一个从facebook api获得。
$UserHomeTown[1]
是用户位置,$city_Value[1]
是朋友位置,但是当我尝试检查这些位置之间的值时,我总是会误。
通过回显到屏幕测试语句,这就是我得到的
if (Lancashire === United Kingdom) False
if (Lancashire === Lancashire) False
我试过了!=,!==,===,==仍然我得到的都是假的,
以下是我从Facebook获取信息的代码
$userFriend_profile = $facebook->api('/me/friends?fields=name,location');
$total = count($userFriend_profile['data']);
for ($i = 0; $i < $total;)
{
if(isset($userFriend_profile['data'][$i]['location']['name']))
{
$city_Value = explode(',',trim($userFriend_profile['data'][$i]['location']['name']));
if ($city_Value[0] != $UserHomeTown[0]) { // This on works
if (isset($city_Value[1])) {
echo "if ($UserHomeTown[1] === $city_Value[1])";
if ($UserHomeTown[1] === $city_Value[1]){
echo "<br> True<br><br>";
} else {
echo "<br> False<br><br>";
}
}
}
}
$i = $i + 1;
}
答案 0 :(得分:0)
虽然我在代码中没有看到任何错误,但请尝试
if ($UserHomeTown[1] == $city_Value[1])
代替if ($UserHomeTown[1] === $city_Value[1])
答案 1 :(得分:0)
数组$city_Value[1]
正在实际值前面传递一个空格,该空格未在输出中显示但返回false
if语句看到"Lancashire" == " Lancashire"