-
-11 17
-
今天在做一个小小的判断,尽然发了我1个多小时,两个打印在页面上看似一摸一样的字符串,在php钟判断却不相等!,开始以为是字符集的问题,可是专一之后任然不对,最后最后才知道问题出在file这个函数上!原来filefile() 将文件作为一个数组返回。数组中的每个单元都是文件中相应的一行,包括换行符在内。主要问题就是file换回的数组中包含换行符,所以才和看似一摸一样的字符串不相等!最后用rtrim函数去掉换行符后比较就一样了!
以下内容来自参考手册:
file_get_contents() 函数把整个文件读入一个字符串中。
和 file() 一样,不同的是 file_get_contents() 把文件读入一个字符串。
file_get_contents() 函数是用于将文件的内容读入到一个字符串中的首选方法。如果操作系统支持,还会使用内存映射技术来增强性能。
语法
file_get_contents(path,include_path,context,start,max_length)
参数 描述 path 必需。规定要读取的文件。 include_path 可选。如果也想在 include_path 中搜寻文件的话,可以将该参数设为 "1"。 context 可选。规定文件句柄的环境。
context 是一套可以修改流的行为的选项。若使用 null,则忽略。
start 可选。规定在文件中开始读取的位置。该参数是 PHP 5.1 新加的。 max_length 可选。规定读取的字节数。该参数是 PHP 5.1 新加的。 说明
对 context 的支持是 PHP 5.0.0 添加的。
提示和注释
注释:本函数可安全用于二进制对象。
file() 函数把整个文件读入一个数组中。
与 file_get_contents() 类似,不同的是 file() 将文件作为一个数组返回。数组中的每个单元都是文件中相应的一行,包括换行符在内。
如果失败,则返回 false。
语法
file(path,include_path,context)
参数 描述 path 必需。规定要读取的文件。 include_path 可选。如果也想在 include_path 中搜寻文件的话,可以将该参数设为 "1"。 context 可选。规定文件句柄的环境。
context 是一套可以修改流的行为的选项。若使用 null,则忽略。
说明
对 context 的支持是 PHP 5.0.0 添加的。
返回的数组中每一行都包括了行结束符,因此如果不需要行结束符时还需要使用 rtrim() 函数。
提示和注释
注释:从 PHP 4.3.0 开始,可以用 file_get_contents() 来将文件读入到一个字符串并返回。
注释:从 PHP 4.3.0 开始,file() 可以安全用于二进制文件。
注释:如果碰到 PHP 在读取文件时不能识别 Macintosh 文件的行结束符,可以激活 auto_detect_line_endings 运行时配置选项。
本文来源于php爱好者:php教程 —http://www.phplover.cn/
原文地址:http://www.phplover.cn/post/php-file-get-contents.html
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
- 评论(0)
发表评论 TrackBack