PHP 中的简单比较不起作用
simple comparison in PHP not working
这是我的函数:
function checkForDuplicates($items, $checkitem)
{
$rows = explode("\n", $items);
foreach($rows as $item)
{
if($item === $checkitem)
return TRUE;
}
return FALSE;
}
我已确认其 returns 准确无误且工作正常。
这是函数被调用的地方,我 运行 遇到了问题:
$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);
}
无论我输入什么,它都会以任何一种方式写入文件。我无法理解为什么这么简单的比较不起作用。
您的问题来自尾随的“;”这里
if(checkForDuplicates($emails, $email) == FALSE);
它归结为带有空语句的 if。
始终执行以下块(文件附加),因为它不是条件的一部分。
这是我的函数:
function checkForDuplicates($items, $checkitem)
{
$rows = explode("\n", $items);
foreach($rows as $item)
{
if($item === $checkitem)
return TRUE;
}
return FALSE;
}
我已确认其 returns 准确无误且工作正常。 这是函数被调用的地方,我 运行 遇到了问题:
$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);
}
无论我输入什么,它都会以任何一种方式写入文件。我无法理解为什么这么简单的比较不起作用。
您的问题来自尾随的“;”这里
if(checkForDuplicates($emails, $email) == FALSE);
它归结为带有空语句的 if。
始终执行以下块(文件附加),因为它不是条件的一部分。