4096在php中的含义是什么?

4096在php中的含义是什么?,php,fgets,Php,Fgets,我是php的新手。 我一件简单的事都不懂 <?php $users = fopen("users.txt", "r"); while ($line = fgets($users, 4096)) { list($name, $occupation, $color) = explode("|", $line); printf("Name: %s<br/>", $name); printf("Occupatio

我是php的新手。 我一件简单的事都不懂

<?php 

    $users = fopen("users.txt", "r");

    while ($line = fgets($users, 4096)) {

        list($name, $occupation, $color) = explode("|", $line);

        printf("Name: %s<br/>", $name);
        printf("Occupation: %s<br/>", $occupation);
        printf("Favourite color: %s <br />", $color);
    }
    fclose($users);

 ?>

这里,在line中,$line=fgets$users,4096是什么意思?

它只是假定的一行的最大长度

根据,

当读取长度为-1字节、换行符或EOF(以先到者为准)时,读取结束。如果未指定长度,它将一直从流中读取,直到到达行的末尾

如果您没有在4.3.0下为PHP指定长度,它将使用length=1024。 如果在较新版本中未指定长度,它将一直读取,直到到达行的末尾

我可能会猜测指定长度的几个原因:

与旧版本的兼容性。旧版本将使用长度=1024。如果文件中有较长的行,最好为其指定最大可能长度; 如果要从一行中读取不超过n个字符; 另外,指定有限长度可能对性能有积极影响。如果我错了,请纠正我。
因此,在新版本中,如果您想读取整行,请不要使用长度或将其设置为输入中一行的最大可能长度

它只是假定的直线的最大长度

根据,

当读取长度为-1字节、换行符或EOF(以先到者为准)时,读取结束。如果未指定长度,它将一直从流中读取,直到到达行的末尾

如果您没有在4.3.0下为PHP指定长度,它将使用length=1024。 如果在较新版本中未指定长度,它将一直读取,直到到达行的末尾

我可能会猜测指定长度的几个原因:

与旧版本的兼容性。旧版本将使用长度=1024。如果文件中有较长的行,最好为其指定最大可能长度; 如果要从一行中读取不超过n个字符; 另外,指定有限长度可能对性能有积极影响。如果我错了,请纠正我。
因此,在新版本中,如果您想读取整行,请不要使用长度或将其设置为输入中一行的最大可能长度

如有疑问,请参阅手册。如有疑问,请参阅手册。