我有這個PHP:爲什麼這個PHP認爲「email」==「domain」?
$ec = $trimmed['emails'];//has a value of "email"
$dc = $trimmed['date'];//has a value of "timestamp"
$data = array("email","domain","timestamp");
$num = count($data);
for ($i=0; $i<$num; $i++){
if ($data[$i] == $ec) {
$ec = $i;
} else if ($data[$i] == $dc) {
$dc = $i;
}
}
當我運行這個PHP $ EC最終等於域,而不是電子郵件的位置。此外,很明顯,第一個if認爲「email」和「domain」等同於「email」,因爲當我第一次回顯循環時,它顯示$ ec爲「email」。任何想法爲什麼?
這不回答你的問題,但是這個代碼看起來像寫['array_search']的馬車路(HTTP ://www.php.net/manual/en/function.array-search.php)。也許切換到這將完全解決您的問題。至於答案本身,考慮到任何*字符串與'=='相比等於整數0。 – Jon
你的代碼是一個bug,請發佈這個代碼和更多的數據,我相信它可以用其他方式寫。 –
調試你的代碼,你會確切地知道爲什麼。 – animuson