手机
当前位置:查字典教程网 >编程开发 >php教程 >PHP 获取远程文件内容的函数代码
PHP 获取远程文件内容的函数代码
摘要:如下函数:复制代码代码如下:相关解释:1,ini_get:Returnsthevalueoftheconfigurationoptionas...

如下函数:

复制代码 代码如下:

<?

/**

获取远程文件内容

@param $url 文件http地址

*/

function fopen_url($url)

{

if (function_exists('file_get_contents')) {

$file_content = @file_get_contents($url);

} elseif (ini_get('allow_url_fopen') && ($file = @fopen($url, 'rb'))){

$i = 0;

while (!feof($file) && $i++ < 1000) {

$file_content .= strtolower(fread($file, 4096));

}

fclose($file);

} elseif (function_exists('curl_init')) {

$curl_handle = curl_init();

curl_setopt($curl_handle, CURLOPT_URL, $url);

curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT,2);

curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER,1);

curl_setopt($curl_handle, CURLOPT_FAILONERROR,1);

curl_setopt($curl_handle, CURLOPT_USERAGENT, 'Trackback Spam Check'); //引用垃圾邮件检查

$file_content = curl_exec($curl_handle);

curl_close($curl_handle);

} else {

$file_content = '';

}

return $file_content;

}

?>

相关解释:

1,ini_get : Returns the value of the configuration option as a string on success, or an empty string on failure(读取 php.ini 配置文件中的值)

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

allow_url_fopen = On(配置文件中的内容)

3,fopen( "rb"): 在操作二进制文件时如果没有指定 'b' 标记,可能会碰到一些奇怪的问题,包括坏掉的图片文件以及关于 rn 字符的奇怪问题。

注意: 为移植性考虑,强烈建议在用 fopen() 打开文件时总是使用 'b' 标记。

注意: 再一次,为移植性考虑,强烈建议你重写那些依赖于 't' 模式的代码使其使用正确的行结束符并改成 'b' 模式。

4,strtolower -- Make a string lowercase

5,curl_init() :curl_init -- Initialize a cURL session(初始化一个cUrl会话)

resource curl_init ( [string url] )

Initializes a new session and return a cURL handle for use with the curl_setopt(), curl_exec(), and curl_close() functions.

url--If provided, the CURLOPT_URL option will be set to its value. You can manually set this using the curl_setopt() function.

Returns a cURL handle on success, FALSE on errors.

6,curl_setopt -- Set an option for a cURL transfer(提供设置)

bool curl_setopt ( resource ch, int option, mixed value )

Sets an option on the given cURL session handle. (具体请看 PHP 手册) There:

CURLOPT_URL :The URL to fetch. You can also set this when initializing a session with curl_init().

CURLOPT_CONNECTTIMEOUT :The number of seconds to wait whilst trying to connect. Use 0 to wait indefinitely.(无限期等待 设置为 0)

CURLOPT_RETURNTRANSFER :TRUE to return the transfer as a string of the return value of curl_exec() instead of outputting it out directly.

CURLOPT_FAILONERROR :TRUE to fail silently if the HTTP code returned is greater than or equal to 400. The default behavior is to return the page normally, ignoring the code.

CURLOPT_USERAGENT :The contents of the "User-Agent: " header to be used in a HTTP request.

7,curl_exec : Perform a cURL session, This function should be called after you initialize a cURL session and all the options for the session are set.

如果成功则返回 TRUE,失败则返回 FALSE。 However, if the CURLOPT_RETURNTRANSFER option is set, it will return the result on success, FALSE on failure

8,curl_close -- Close a cURL session

下面是一些参考代码:

PHP 采集程序 常用函数

PHP 采集获取指定网址的内容

【PHP 获取远程文件内容的函数代码】相关文章:

PHP文件读取功能的应用实例

PHP SPL标准库中的常用函数介绍

PHP file_get_contents函数读取远程数据超时的解决方法

php curl 上传文件代码实例

PHP实现多线程的两个方法

PHP中的命名空间详细介绍

PHP获取photoshop写入图片文字信息的方法

PHP4引用文件语句的对比

PHP中的traits实现代码复用使用实例

用定制的PHP应用程序来获取Web服务器的状态信息

精品推荐
分类导航