我在這裏有這個小片段,即使它滿足if
語句也返回false
。如果語句返回假即使它不是
$urls = $_POST['links'];
trim($urls);
$urls = explode("\r\n",$urls);
foreach($urls as $url){
trim($url);
if(strpos($url,'http://') === false)
$url = 'http://'.$url;
$parse = parse_url($url, PHP_URL_HOST);
if(($parse != 'site.com') || ($parse != 'www.site.com')) //problem here
echo 'false:'.$parse.'<br>';
else
echo 'true:'.$parse;
}
的輸入是從一個textarea:
http://site.com
site.com
http://www.site.com
www.site.com
輸出:
true:site.com
true:site.com
false:www.site.com
false:www.site.com
你認爲是什麼問題?
只是一個小竅門:你可以在GET和POST參數中使用數組,例如var [0] = abc&var [1] = def你的爆炸構造是有點不安全的。 – peipst9lker
@ peipst9lker對不起,我沒有明白你的意思,你能解釋一下嗎? – Michelle
@ peipst9lker我不確定這會有所幫助,因爲它看起來像4行都來自同一文本區域。我也不確定爆炸如您所建議的那樣是不安全的。不過,我確實認爲他應該使用「\ n」作爲分隔符而不是「\ r \ n」。 – jedwards