PHP 不会比较相同的字符串

发布于 2024-10-29 10:31:39 字数 472 浏览 2 评论 0原文

如果我显示 $d[0] 它是 [ email protected] 但它拒绝接受 if...

$d = file("mails.txt");
if ($d[0] == "[email protected]") {
    echo "JOW!";
}
echo $d[0];

有什么想法吗?

If I display $d[0] it is [email protected] but it is refusing to accept the if...

$d = file("mails.txt");
if ($d[0] == "[email protected]") {
    echo "JOW!";
}
echo $d[0];

Any idea?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

予囚 2024-11-05 10:31:39

尝试在 $d[0] 上调用 trim 函数,这将删除字符串开头和结尾的所有换行符。

        $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()
不希望出现行结尾。

来自: http://php.net/manual/en/function.file.php

Try calling the trim function on the $d[0], which will remove all new line characters at the beginning and end of the string.

        $d = file("mails.txt");
        if(trim($d[0])=="[email protected]"){
            echo "JOW!";
        }
        echo $d[0];

or not include any new lines at all:

        $d = file("mails.txt", FILE_IGNORE_NEW_LINES);
        if($d[0]=="[email protected]"){
            echo "JOW!";
        }
        echo $d[0];

Each line in the resulting array will
include the line ending, unless
FILE_IGNORE_NEW_LINES is used, so you
still need to use rtrim() if you do
not want the line ending present.

From: http://php.net/manual/en/function.file.php

幸福还没到 2024-11-05 10:31:39

我同意迈克刘易斯的观点,使用修剪可能会解决它失败的原因。

另外,一般来说,如果在比较字符串时在 PHP 中出现奇怪的结果,请尝试使用 '===' 或 strcomp 来查看是否可以解决问题。

http://www.phpcatalyst.com/php-compare-strings.php

I agree with Mike Lewis, using trim might fix why it was failing.

Also, in general, if you are having weird results in PHP when comparing strings, try '===' or strcomp to see that fixes the issue.

http://www.phpcatalyst.com/php-compare-strings.php

2024-11-05 10:31:39
$d = file("mails.txt", FILE_IGNORE_NEW_LINES);
if ($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];
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文