Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.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 如果语句在不应该时命中';T_Php_Variables_If Statement_Variable Assignment - Fatal编程技术网

Php 如果语句在不应该时命中';T

Php 如果语句在不应该时命中';T,php,variables,if-statement,variable-assignment,Php,Variables,If Statement,Variable Assignment,我正在运行PHP5.3,遇到了一个奇怪的问题。以前有人遇到过这个问题吗 if(isset($_POST['favorites'])) { $fave = $_POST['favorites']; } elseif(isset($_GET['favorites'])) { $fave = $_GET['favorites']; } else { $fave = 0; } echo $fave; //echoes 0 if($fave=="addto"){ //This is called an

我正在运行PHP5.3,遇到了一个奇怪的问题。以前有人遇到过这个问题吗

if(isset($_POST['favorites'])) { $fave = $_POST['favorites']; }
elseif(isset($_GET['favorites'])) { $fave = $_GET['favorites']; } else { $fave = 0; }

echo $fave; //echoes 0

if($fave=="addto"){ //This is called and looks like $fave is temporarily set to "addto"

echo $fave; //echoes 0

}

$fave从未设置为“addto”,但if语句出于某种原因将其视为“addto”。有没有人曾经遇到过这种情况,或者知道如何使它按应有的方式工作?

试试这个,看看打印出了什么值:

echo 'Post [Favorites]: ' . $_POST['favorites'] . '<br><br>';

if(isset($_POST['favorites'])) { 
    $fave = $_POST['favorites']; 
}elseif(isset($_GET['favorites'])) { 
    $fave = $_GET['favorites']; 
}else{ 
    $fave = 0; 
}

echo 'Value of \$fave: ' . $fave . '<br><br>';

if($fave=="addto"){ 
    //This is called and looks like $fave is temporarily set to "addto"
    echo 'Inside IF ADDTO. Value of \$fave: ' . $fave . '<br><br>';
}
echo'Post[Favorites]:'$_发布['favorites']

'; 如果(isset($_POST['favorites']){ $fave=$_POST['favorites']; }elseif(isset($_GET['favorites']){ $fave=$_GET['favorites']; }否则{ $fave=0; } echo“价值\$fave:”$“亲爱的。”

'; 如果($fave==“addto”){ //这被调用,看起来$fave被临时设置为“addto” echo'Inside IF ADDTO.\$fave:'的值。$fave.

; }
使用比较变量类型===

if($fave==="addto")

数据类型比较(松散类型)与==
如果您将一个数字与一个字符串进行比较,或者比较涉及数字字符串,那么每个字符串都将转换为一个数字,并以数字形式执行比较。
-如上文所述,您需要使用
==
来确保它也是相同的数据类型。Post[收藏夹]:

如果添加到,则\$fave:0的值

在内部。\$fave:0的值