所以我是PHP的新手,與我用過的其他語言相比,PHP中的一些東西對我來說沒有任何意義。PHP!==很混亂,沒有意義
我的代碼目前
$secret = $_POST['secret']; //HTML input to enter secret code to unlock easter egg
$theSecret = "1234"; //Pre-defined test code
enter code here
if($secret !== $theSecret){
echo "You got the secret wrong!";
exit;}
現在,在C++或C#這樣的工作是有意義的,但然而,在PHP,當我使用!==它總是等於真實的,當我使用===就好像沒有任何東西被檢查,因爲它總是通過。
我想要實現的是如果代碼是正確的,那麼我可以繼續,如果它不正確,然後終止連接。有什麼我不知道我做錯了嗎? PHP對我並不好,我感謝大家的幫助。
你的聲明均屬不實。你必須給出'$ _POST ['secret']'。如果兩者都是「1234」,那麼===爲真,!==爲假。 – AbraCadaver
如果一個是整數,另一個是字符串,當然它們不是完全相同的,這就是'==='檢查的內容。做'$ theSecret =(int)「1234」;'會將字符串轉換爲整數,** IF ** POST數組是一個整數。將它作爲一個字符串轉換(整型)'$ theSecret =(string)1234;'當POST數組是一個字符串時,將對'$ theSecret =「1234」;'爲TRUE。 [** RTFM **](http://il.php.net/manual/en/language.operators.comparison.php) –