誰能告訴我爲什麼,使用下面的代碼的時候,我被重定向到elephant.com而不是看到'長頸鹿!
<?php
$foo="giraffe";
if($foo="elephant"){
header("location:http://www.elephant.com");
exit();
}else{
echo $foo;}
?>
感謝您尋找
Ĵ
誰能告訴我爲什麼,使用下面的代碼的時候,我被重定向到elephant.com而不是看到'長頸鹿!
<?php
$foo="giraffe";
if($foo="elephant"){
header("location:http://www.elephant.com");
exit();
}else{
echo $foo;}
?>
感謝您尋找
Ĵ
您的if()
聲明有一個等號。這不會在PHP中進行比較;它設置值並返回true。
爲了做一個比較,你需要使用一個雙等於或三等號:
if($foo == "elephant") { .... }
或
if($foo === "elephant") { .... }
兩者之間的區別是,雙-equal不關心變量的數據類型,而triple-equal則不關心變量的數據類型。在這種情況下,它們之間沒有太大的區別,但值得學習和理解差異,因爲如果你不瞭解它們,它們會咬你。更多的信息在這裏:http://php.net/manual/en/language.operators.comparison.php
使用==而不是= –
你有** = **分配,當你想與** == **進行比較和正確使用標題位置和完整的URI – 2012-11-07 18:48:04