PHP读取文件的两种方式:file_get_contents和fread(附代码实例)-LMLPHP

本文主要讲述了php中读取文件的两种方式:freadfile_get_contents,以及这两者之间同样是读取文件,这两者又有什么异同。

1.两个函数的语法:

fread()

fread    ( resource $handle   , int $length   ) : string
登录后复制
  • $handle:文件系统指针,一般由 fopen() 创建的 resource(资源)。

  • $length:读取文件的字节长度。

  • 返回值: $length长度的字符串。

file_get_contents()

file_get_contents ( string $filename ,bool $include_path=false ,resource $context =? ,int $offset = -1 , int $maxlen = ? ) : string
登录后复制
  • $filename:要读取的文件的名称。

  • $include_path:如果需要在 include_path(在 php.ini 中)中搜索文件的话,请设置该参数为 '1'。

  • $context:规定文件句柄的环境。context 是一套可以修改流的行为的选项。若使用 null,则忽略。

  • $offset:规定在文件中开始读取的位置。该参数是 PHP 5.1 添加的。

  • $maxlen:规定读取的字节数

  • 返回值: $maxlen长度的字符串。

2.两者的区别:

fread()需要通过指针读取内容,可根据 size 大小 读内容

<?php
  //文件路径
  $filename="./exit.txt";
  //获取文件资源
  $file = fopen($filename,'r'); //读取二进制文件时,需要将第二个参数设置成'rb'
  //获取文件内容
  $file_info=fread($file,10);
  //打印文件内容
  echo $file_info;
  //关闭文件资源
    fclose($file);
?>
登录后复制
输出:php good b
登录后复制

file_get_contents ()直接读全部内容

<?php
  //文件路径
  $filename="./exit.txt";
  echo file_get_contents($filename);
?>
登录后复制
输出:php good better Knowledge is power
登录后复制

fread()如果想要获取全部内容,则需要利用filesize() 函数返回指定文件的大小。

  $file_info=fread($file,filesize($filename));
登录后复制

推荐:2021年PHP面试题大汇总(收藏)》《php视频教程

以上就是PHP读取文件的两种方式:file_get_contents和fread(附代码实例)的详细内容,更多请关注Work网其它相关文章!

09-04 16:08