php入门到就业线上直播课:进入学习
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API调试工具:点击使用
本文主要讲述了php
中读取文件的两种方式:fread
和file_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));