2013-09-28 57 views
0

我相信我正確設置了if(strpos());。在幾個例子中看到它之後,我嘗試了在else{};elseif {};中的設置,但是它們提示了意外的'}'等等。這是爲什麼迴應不匹配的值?

<?php 

$extension = '.com'; 

$lines = file('testdomains.txt'); 

foreach($lines as $line) 
{ 
    // Check if the line contains the string we're looking for, and print if it does 
    if(strpos($line, $extension) !== false) 
    $line = preg_replace('/12:00:00 AM,AUC\b/','<br />', $line); 
    $line = preg_replace('/,9\/28\/2013/', '', $line); 
    echo $line; 
} 

?> 

回答

2

這個代碼

if(strpos($line, $extension) !== false) 
$line = preg_replace('/12:00:00 AM,AUC\b/','<br />', $line); 
$line = preg_replace('/,9\/28\/2013/', '', $line); 
echo $line; 

應該

if(strpos($line, $extension) !== false) { 
    $line = preg_replace('/12:00:00 AM,AUC\b/','<br />', $line); 
    $line = preg_replace('/,9\/28\/2013/', '', $line); 
    echo $line; 
} 

你忘了爲包裝他們...

+0

這會做到這一點!我整個過程都是錯誤的:P 謝謝! – CodingNoob

0

使用時若無大括號聲明,記得不是隻有一個語句將作爲該條件的一部分執行。如果要放置多個語句,則必須使用大括號,而不是將它們放在同一行上。

您的代碼應該是這樣的

if(strpos($line, $extension) !== false){ 
    $line = preg_replace('/12:00:00 AM,AUC\b/','<br />', $line); 
    $line = preg_replace('/,9\/28\/2013/', '', $line); 
    echo $line; 
}