file_get_contents,file_get_contents函数支持访问远程文件

http://www.itjxue.com  2023-01-13 16:02  来源:未知  点击次数: 

PHP中有两个读文件函数,file()和file_get_contents(),这两个函数有何差异?

PHP中file() 函数和file_get_contents() 函数的作用都是将整个文件读入某个介质,其主要区别就在于这个介质的不同。file() 函数是将文件读入一个数组中,而file_get_contents()是将文件读入一个字符串中。

file() 函数是把整个文件读入一个数组中,然后将文件作为一个数组返回。数组中的每个单元都是文件中相应的一行,包括换行符在内。如果失败,则返回 false。

file_get_contents() 函数是把整个文件读入一个字符串中。和 file() 一样,不同的是file_get_contents() 把文件读入一个字符串。file_get_contents() 函数是用于将文件的内容读入到一个字符串中的首选方法。如果操作系统支持,还会使用内存映射技术来增强性能。

如何开启filegetcontents

首先要确定PHP版本,file_get_contents需要PHP 4.3以上版本才能运行。然后登录VPS,修改PHP.ini文件,大概在555行,找到下面的内容:

; Whether to allow the treatment of URLs (like http:// or ftp://) as files.

allow_url_fopen = On

如上面,将allow_url_fopen = Off 改成On ,然后重启VPS就可以了。它的作用是用来获取一个文件或者一个网络资源的全部内容,函数读取的时候都是在内存中运行,所以如果要读取文件或网络资源非常大的话,就不能使用这个函数,因为这个函数读取的方式是一次性加载的,所以内存承受不了。

如果不会用LINUX命令修改,只需要在VPS中安装Webmin就可以管理VPS,里面有PHP Configuration选项,可以在线编辑php.ini文件。如果VPS是windos系统,直接找到php.ini用记事本编辑这个文件就可以了。

php使用file_get_contents同步数据是对方收不到数据

原因可能有下面2个情况:

首先看看你的file_get_contents()是否读取到数据,没有数据的话对方肯定收不到;

如果取到了看看是否是数据过大(过长)导致页面发送超时而失败;

解决的办法:

读取到数据用file_get_contents()或者是file()方法都行;

将拿到的数据分段发送(可以反复调用此action来发送,直到没有数据)。

php中file_get_contents()函数用法实例

我们先来看一下php中的

file_get_contents()函数的语法

string

file_get_contents(string

$

filename,bool

$

include_path

=

false,resource

$

context,int

$

offset

=

0,int

$

maxlen)

filename是文件或URL的名称。

include_path如果启用,则在include_path中搜索文件

context这是用于修改流的行为的选项集

offset此值指定要读取的文件的起始位置。

maxlen此值指定要读取的字节数。

将文件内容读取为字符串

这个php示例将从文件中读取内容并存储到字符串变量中。

?php

$

content

=

file_get_contents(“input.txt”);

echo

$

content;

?

将内容从URL读取到字符串

?php

$content

=

file_get_contents("");

echo

$content;

?

以上就是关于php中file_get_contents()函数的相关知识点,感谢大家的阅读和对脚本之家的支持。

您可能感兴趣的文章:PHP

fopen()和

file_get_contents()应用与差异介绍

(责任编辑:IT教学网)

更多

推荐金山WPS文章