PHP中的简单比较无法正常工作

时间:2016-07-08 20:44:20

标签: php if-statement comparison

这是我的功能:

function checkForDuplicates($items, $checkitem)
{
    $rows = explode("\n", $items);  
    foreach($rows as $item)
    {
        if($item === $checkitem)
            return TRUE;
    }
    return FALSE;
}

我已确认其退货准确且运作正常。 这里调用了函数,我遇到了一个问题:

$email = sanitizeInput($_POST['email']);
$email = strtolower($email);
$emails = file_get_contents('emails.txt');

if(checkForDuplicates($emails, $email) == FALSE);
{
    $emailFile = fopen('emails.txt','a') or die ('Sorry. Subscriptions are disabled for the time being.');
    fwrite($emailFile, $email."\n");
    fclose($emailFile);
}

无论我输入什么,它都会以任何方式写入文件。我无法理解为什么这么简单的比较不起作用。

1 个答案:

答案 0 :(得分:3)

你的问题来自尾随“;”这里

if(checkForDuplicates($emails, $email) == FALSE);

归结为一个带有空语句的if。

始终执行以下块(文件追加),因为它不是条件的一部分。