php不比较变量,但比较硬编码的值

php不比较变量,但比较硬编码的值,php,Php,我有一个脚本,可以运行并循环显示各种结果,但我想检查结果是否与给定变量匹配。它可以工作,我像'4'一样输入它,但如果以$myArray形式输入,它不会工作吗 代码是 $vehicle_req = "4"; echo "Vehicle required is : ".$v[$vehicle_req]."<BR><BR>"; //----- GET COMPANIES IN AREA -------- echo "Companies in the area :<BR&

我有一个脚本,可以运行并循环显示各种结果,但我想检查结果是否与给定变量匹配。它可以工作,我像'4'一样输入它,但如果以$myArray形式输入,它不会工作吗

代码是

$vehicle_req = "4";

echo "Vehicle required is : ".$v[$vehicle_req]."<BR><BR>";
//----- GET COMPANIES IN AREA --------
echo "Companies in the area :<BR><BR>";

$result = mysqli_query($con,"SELECT *, ( 3959 * acos( cos( radians(53.83428999999999) ) * cos( radians( latitude ) ) * cos( radians( longitude ) - radians(-3.0399797000000035) ) + sin( radians(53.83428999999999) ) * sin( radians( latitude ) ) ) ) AS distance FROM clients HAVING distance < 30 ORDER BY distance LIMIT 0 , 20;");
while($row = mysqli_fetch_array($result)) {

    $name = $row['name'];
    $id = $row['id'];
    $vehicles = $row['vehicles'];
    echo "<B>".$id." -</B> ".$name."<BR>".$vehicles."<BR>";

    $myArray = explode(':', $vehicles);
    foreach($myArray as $my_Array){
        echo "<BR>".$v[$my_Array]."<BR>";
        echo $my_Array."<BR>";
        if($my_Array == '4')
            echo "MATCH vehicle 4<BR>";
    }
}

$my_数组只是$myArray数组中的一个元素字符串,因此它们永远不会相等。我假设您在foreach循环中引用if语句?你想做什么?编辑:不应该这个'echo.$v[$my_数组]。`这是‘echo.$my_数组’这是一根绳子。。。打印$myArray;在您的foreach之前,查看它是否实际包含您试图匹配的内容,以及它是否实际上是一个数字数组值,如果$my_array==4`ie;未封装,应进行工作排序:$myArray=explode':',$vehicles;foreach$myArray as$my_Array{//echo.$v[$my_Array];//echo$my_Array.$new1=$my_Array;if$vehicle_req====$new1 echo.$name.在所需区域中有一个。$v[$vehicle_req].;}