如果我顯示$d[0]
是[email protected]
但它拒絕接受,如果...PHP不會比相同的字符串
$d = file("mails.txt");
if ($d[0] == "[email protected]") {
echo "JOW!";
}
echo $d[0];
任何想法?
如果我顯示$d[0]
是[email protected]
但它拒絕接受,如果...PHP不會比相同的字符串
$d = file("mails.txt");
if ($d[0] == "[email protected]") {
echo "JOW!";
}
echo $d[0];
任何想法?
嘗試在$d[0]
上調用trim function,這將刪除字符串開頭和結尾處的所有新行字符。
$d = file("mails.txt");
if(trim($d[0])=="[email protected]"){
echo "JOW!";
}
echo $d[0];
或不包含任何新線都:
$d = file("mails.txt", FILE_IGNORE_NEW_LINES);
if($d[0]=="[email protected]"){
echo "JOW!";
}
echo $d[0];
所得數組中的每一行都會 包括結束行,除非使用 FILE_IGNORE_NEW_LINES,所以你 仍然需要如果你使用rtrim() 不希望行結束。
只trim()不是$ trim() – Dmitri 2011-04-01 21:18:55
哦,你是對的:)謝謝! – 2011-04-01 21:20:12
$d = file("mails.txt", FILE_IGNORE_NEW_LINES);
if ($d[0] == "[email protected]") {
echo "JOW!";
}
echo $d[0];
我同意邁克·劉易斯,使用裝飾可能會解決它爲什麼失敗。另外,一般來說,如果您在比較字符串時在PHP中出現奇怪的結果,請嘗試'==='或strcomp以查看解決該問題的方法。
或'strcasecmp',它是二進制安全的不區分大小寫的字符串比較。 – 2013-12-10 12:00:38
有可能是在'$ d [0]'結束了'newline'字符。 – drudge 2011-04-01 21:15:49
不,如果我將它與[email protected]進行比較,它不會觸發 – 2011-04-01 21:17:31
您可以使用'var_dump'來更好地查看變量的內容,因爲它可以逃脫討厭的換行符和其他東西,所以您可以看到他們。 – Thanatos 2011-04-01 21:19:17