当前位置:网站首页 > R语言数据分析 > 正文

TreeSize Free(treesize free怎么扫描不可见空间)



从php读取一个远程文件你至少有四个选项:

4,让你自己的函数使用php的socket函数。

首先我要警告你关于一些。你可以只使用 fopen()和 file_get_contents()当启用fopen包装器。这个参数中指定的php。ini文件并不能改变在运行时使用 ini设置(),知道你是否可以使用这两个或不可以使用下面的代码检查包装器设置的价值。fopen

1。使用fopen()

如果你使用 fopen()阅读一个远程文件的过程很简单,从本地文件读取。唯一的区别是,您将指定URL而不是文件名。看看下面的例子:

现在,上面的代码使用 fread()函数在while循环读取1024字节的数据在一个循环。这段代码还可以这样写:

相反的 fread()我们使用 fgets()它读取一行数据到1024字节。第一个代码更可取比第二虽然。想象一下如果远程文件的大小是50 kb和包含300行。使用第一个代码将导致循环执行了50次,但使用第二个循环将是执行三百次。

如果你考虑成本要调用一个函数加上所需的时间让300个请求的比例仅5然后显然第一个是赢家。

2。使用file_get_contents()

这是我最喜欢的阅读方式远程文件,因为它是非常简单的。只是调用这个函数,并指定一个url作为参数。但一定要记得检查返回值首先来决定它是否返回一个错误处理结果之前

3。curl

不同于上述两种方法使用CURL不能说为straigthforward。虽然这个库是非常有用的,可能不同的协议(而不仅仅是HTTP)进行连接和通信,它需要更多的精力来学习。另一个问题是,并非所有的Web主机有这个库中的PHP安装。因此,我们一定要检查库的安装,然后再尝试使用它。

这是一个基本的例子获取远程文件

在某些情况下使用CURL是速度比使用 file_get_contents()或 fopen()更快。这是因为CURL默认处理压缩协议(例如gzip)。许多网站,大的、小的、使用gzip压缩压缩他们的网页为了节省带宽。这个网站,例如,也使用gzip压缩,减少带宽使用到一半。所以,如果您是那种等不及的CURL将适合你。

4。定制函数

在最坏的情况下,您的服务器将禁用FOPEN包装,并没有安装CURL库。 在这种情况下,你只需要做出你自己的方式。

我们的函数应当命名 getRemoteFile()这只需要一个参数,远程文件的url。对这个函数的骨架如下所示

/ / 1。把主机名和url路径

/ / 2。连接到远程服务器

/ / 3。发送必要的标题获取文件

/ / 4。检索响应来自远程服务器

/ / 5。strip the headers

/ / 6。返回文件的内容

提取的主机名和url路径从给定的url,我们将使用 parse_url()函数。当给定url这个函数会输出以下:

  • scheme
  • host
  • port
  • user
  • pass
  • path
  • query
  • fragment

例如,如果url http://www.php-mysql-tutorial.com/somepage.php然后 parse_url()将返回:

Array

(

[scheme] => http

[host] => www.php-mysql-tutorial.com

[path] => /somepage.php

)

#ouch然后 parse_url()将返回这个:

Array

(

[scheme] => http

[host] => www.php-mysql-tutorial.com

[user] => myusername

[pass] => mypassword

[path] => /somepage.php

[query] => q=whatsthis

[fragment] => ouch

)

为我们的新功能,我们只关心host, port, path and query.

可以建立一个连接到一个远程服务器我们使用 fsockopen()。这个函数只需要5个参数、hostname, port number,,a reference for error number, a reference for the error message and timeout

上面的代码发送9行标题但只有前两个是强制性的。因此,即使你只发送这些

fputs($ fp”,获得$ path HTTP / 1.0 r n”。

“主持人:$主机 r n r n”);

这个函数会正常工作。不总是虽然。因为该文件存储在一个远程服务器它真的到该服务器回复你的请求。有些人编写代码页阻止任何请求没有适当的引用页头。有些人会只接受一个特定的用户代理。其他需要cookie设置在头。

到此这篇TreeSize Free(treesize free怎么扫描不可见空间)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • uchar unsigned char是什么意思(uchar num什么意思)2025-07-05 19:00:09
  • codeformer手机版下载马赛克(makecode手机版)2025-07-05 19:00:09
  • ueditor官网(ueditor官网文档)2025-07-05 19:00:09
  • oracle查看锁表(Oracle查看锁表时间)2025-07-05 19:00:09
  • 电脑剪辑视频的软件pr(电脑剪辑视频的软件推荐)2025-07-05 19:00:09
  • tornado龙卷风(tornado龙卷风图片)2025-07-05 19:00:09
  • sea at collioure翻译(sea lions翻译)2025-07-05 19:00:09
  • impdp参数remap_schema(impdp参数transform)2025-07-05 19:00:09
  • redis软件怎么连接redis(redis用什么连接)2025-07-05 19:00:09
  • grid布局优缺点(为什么很少人用grid布局)2025-07-05 19:00:09
  • 全屏图片