从 Pastebin 读取文件时的 PHP if 语句不知何故不起作用



所以我编写了一些php代码,该代码读取了pastebin并通过它循环的文件。我的Pastebin文件看起来像这样:

=WRTSAM=
=Dutch=
=English=
+ Hond
- Dog
+ Eend
- Duck
+ Schaap
- Sheep
+ Kat
- Cat

这是我的php代码:

<?php
$pb_key = $_GET['list'];
$listfile = file('https://pastebin.com/raw/' . $pb_key);
foreach ($listfile as $line_num => $line) {
    if ($line_num == 0) {
        echo $line;
        if ($line == "=WRTSAM=") {
            echo "It works!";
        }
    }
}
?>

很奇怪的是,从减去开始的行确实适用于行。它可能与unicode/ascii有关吗?

很抱歉(可能(愚蠢的问题,但我无法弄清楚。我一直在尝试一个小时。

默认情况下, file()包含每个字符串中的newlines,但是您要比较的字符串没有newline。如果您不想要此,请使用FILE_IGNORE_NEW_LINE选项:

$listfile = file('https://pastebin.com/raw/' . $pb_key, FILE_IGNORE_NEW_LINES);

最新更新