如何从php文件中读取每一行?

Alv*_*var 1 php login file

我是学习 php 的新手,在我的第一个程序中,我想制作一个基本的 php 网站,该网站具有登录功能以及用户和密码数组。

我的想法是将用户名存储为列表参数并将密码作为内容,如下所示:

arr = array(username => passwd, user => passwd);
Run Code Online (Sandbox Code Playgroud)

现在我的问题是我不知道如何从文件 ( data.txt) 中读取数据,因此我可以将其添加到数组中。

data.txt sample:
username passwd
anotherUSer passwd
Run Code Online (Sandbox Code Playgroud)

我已经打开了文件fopen并将其存储在$data.

Nie*_*sol 9

您可以使用该file()功能。

foreach(file("data.txt") as $line) {
    // do stuff here
}
Run Code Online (Sandbox Code Playgroud)


Cra*_*nio 6

修改这个 PHP 示例(取自 PHP 官方网站...始终先检查!):

$handle = @fopen("/path/to/yourfile.txt", "r");
if ($handle) {
    while (($buffer = fgets($handle, 4096)) !== false) {
        echo $buffer;
    }
    if (!feof($handle)) {
        echo "Error: unexpected fgets() fail\n";
    }
    fclose($handle);
}
Run Code Online (Sandbox Code Playgroud)

到:

$lines = array();
$handle = @fopen("/path/to/yourfile.txt", "r");
if ($handle) {
    while (($buffer = fgets($handle, 4096)) !== false) {
        $lines[] = $buffer;
    }
    if (!feof($handle)) {
        echo "Error: unexpected fgets() fail\n";
    }
    fclose($handle);
}

// add code to loop through $lines array and do the math...
Run Code Online (Sandbox Code Playgroud)

请注意,您不应将登录详细信息存储在未加密的文本文件中,这种方法存在严重的安全问题。我知道您是 PHP 新手,但最好的方法是将其存储在数据库中并使用 MD5 或 SHA1 等算法加密密码,