2

我正在运行 PHP 5.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”。任何人以前都遇到过这种情况,或者对如何使其以应有的方式工作有任何想法?

4

2 回答 2

0

使用 === 比较变量类型

if($fave==="addto")
于 2013-05-31T21:27:54.273 回答
0

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

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>';
}
于 2013-05-31T21:23:18.430 回答