首页 > PHP > PHP文件目录操作 阅读:1,815

PHP file():把整个文件读入一个数组中

file() 函数也是读取整个文件的内容,与前面介绍的《readfile() 函数》不同的是,file() 函数会将文件的内容按行存放到数组中(包括换行符在内)。如果成功则返回这个数组,失败则返回 FALSE。file() 函数的语法格式如下:

file(string $filename[, int $flags = 0[, resource $context]])

参数说明如下:
  • $filename:要读取的文件名称或路径;
  • $flags:可选参数,flags 可以是以下一个或多个常量:
    • FILE_USE_INCLUDE_PATH:在 include_path 中查找文件;
    • FILE_IGNORE_NEW_LINES:在数组每个元素的末尾不要添加换行符;
    • FILE_SKIP_EMPTY_LINES:跳过空行。
  • $context:使用 stream_context_create() 函数创建的上下文资源。

函数返回的结果数组中的每一行都将包括行尾,除非使用了 FILE_IGNORE_NEW_LINES,因此如果不希望行尾出现,可以使用 rtrim() 函数。

注意:在读取 Mac 电脑中或由其创建的文件时,如果 PHP 不能正确的识别行结束符,可以在运行时配置中启用 auto_detect_line_endings 选项。

【示例】使用 file() 读取文件并输出。
<?php
    $file = 'test.txt';
    $arr  = file($file, FILE_IGNORE_NEW_LINES);
    $arr2 = file($file);
    echo '<pre>';
    var_dump($arr);
    var_dump($arr2);
?>
运行结果如下:

array(2) {
  [0]=>
  string(16) "C语言中文网"
  [1]=>
  string(23) "http://c.biancheng.net/"
}
array(2) {
  [0]=>
  string(18) "C语言中文网
"
  [1]=>
  string(23) "http://c.biancheng.net/"
}

关注微信公众号「魏雪原」,跟着站长一起学习,拒绝躺平,跳出内卷,用知识完成阶级跃升:

  • 每日更新,坚持原创,敢说真话,凡事有态度。
  • 编程+求职+创业+营销,既有硬知识,也有软技能。
  • 手机端阅读教程,随时随地都能学习。
  • 即将绑定网站部分功能,包括注册登录、找回密码、获取下载链接等。

魏雪原二维码
微信扫描二维码关注魏雪原