如何使用PHP获取网络上文件

<!-- generateindex.php -->
<?php
//设置我们将要使用的文件
$srcurl = "http://localhost/index.php";
$tempfilename = "tempindex.html";
$targetfilename = "index.html";
?>
<HTML>
<HEAD>
<TITLE>
Generating <?php echo("$targetfilename"); ?>
</TITLE>
</HEAD>
<BODY>
<P>Generating <?php echo("$targetfilename"); ?>...</P>
<?php
//首先删除上次操作可能遗留下来的临时文件。
//这个过程可能会提示错误,所以我们使用@以防止报错。
@unlink($tempfilename);
//通过一个URL的请求装入动态版本。
//在我们接收到相关内容之前,Web服务器会对PHP进行处理
//(因为本质上我们是在模拟一个Web浏览器),
//所以我们将获得的是一个静态的HTML页面。
//'r'指出我们只要求对这个“文件”进行读操作。
$dynpage = fopen($srcurl, 'r');
//处理错误
if (!$dynpage) {
echo("<P>Unable to load $srcurl. Static page ".
"update aborted!</P>");
exit();
}
//将这个URL的内容读入到一个PHP变量中。
//指定我们将读取1MB的数据(超过这个数据量一般是意味着出错了)。
$htmldata = fread($dynpage, 1024*1024);
//当我们完成工作后,关闭到源“文件”的连接。
fclose($dynpage);
//打开临时文件(同时在这个过程中建立)以用来写入(注意'w'的用法).
$tempfile = fopen($tempfilename, 'w');
//处理错误
if (!$tempfile) {
echo("<P>Unable to open temporary file ".
"($tempfilename) for writing. Static page ".
"update aborted!</P>");
exit();
}
//将静态页面的数据写入到临时文件中
fwrite($tempfile, $htmldata);
//完成写入后,关闭临时文件。
fclose($tempfile);
//如果到了这里,我们应该已经成功地写好了一个临时文件,
//现在我们可以用它来覆盖原来的静态页面了。
$ok = copy($tempfilename, $targetfilename);
//最后删除这个临时文件。
unlink($tempfilename);
?>
<P>Static page successfully updated!</P>
</BODY>
</HTML>

(0)

相关推荐

  • PHP网络操作函数汇总

    checkdnsrr - 给指定的主机(域名)或者IP地址做DNS通信检查 closelog - 关闭系统日志链接 define_syslog_variables - 初始化所有syslog相关变量 dns_check_record - checkdnsrr别名 dns_get_mx - getmxrr别名 dns_get_record - 获取指定主机的DNS记录 fsockopen - 打开一个网络连接或者一个Unix套接字连接 gethostbyaddr - 获取指定的IP地址对应的主机名

  • 使用PHP获取网络文件的实现代码

    复制代码 代码如下: <?php //设置我们将要使用的文件 $srcurl = "http://localhost/index.php"; $tempfilename = "tempindex.html"; $targetfilename = "index.html"; ?> <HTML> <HEAD> <TITLE> Generating <?php echo("$targetf

  • PHP判断是否连接上网络的方法

    本文实例讲述了PHP判断是否连接上网络的方法.分享给大家供大家参考.具体实现方法如下: 首先写个函数 function varify_url($url){ $check = @fopen($url,"r"); if($check){ $status = true; }else{ $status = false; } return $status; } 接着在需要的地方直接调用即可 $url = "http://www.baidu.com"; if(varify_ur

  • PHP实现的简单网络硬盘

    本文实例讲述了PHP实现的简单网络硬盘.分享给大家供大家参考.具体如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head&g

  • 谈谈新手如何学习PHP网络编程第1/2页

    文章开头就列举了那么多联系方式,难免会让大家感觉有点AD的意味,但是不容质疑的是,默默的确有那么丁点的表现欲^_^,虽然有时候过于细致会被人说婆妈,但是幸好这种细致对于编程来说,还是蛮有益的! 从默默自己向别人问怎么学PHP开始,到后来不少人又来问默默怎么学PHP,不管默默是新手,还是老鸟,似乎总是感觉摸不出一条清晰的脉络来,不过,默默既然学会了PHP,那么我走的这条路或多或少的有一定借鉴性. PHP的背景恐怕就不用默默赘言了,我相信大家选择一种语言,并不是看它的背景和悠久历史,更重要的是看它的

  • PHP判断网络文件是否存在的方法

    本文实例讲述了PHP判断网络文件是否存在的方法.分享给大家供大家参考.具体实现方法如下: $file = "http://www.jb51.net/demo/file_exists.zip"; $fileExists = @file_get_contents($file,null,null,-1,1) ? true : false; if($fileExists){ echo "File Exists!"; }else{ echo "Sorry, we c

  • 使用php来实现网络服务

    作者:samisa 以下文中的翻译名称对照表 : payload: 交谈内容 object: 实例 function: 函数 使用 php来实现网络服务 使用框架: WSO2 WSF/PHP 安装环境: windows 或者 linux (厌恶于眼下计算机文章夹杂无数难懂的翻译以及术语,此处尽量使用口语以及汉语.) WSMessages 类: 在调用网络服务的过程中,需要两个消息,发送的消息和接受的消息,又来有往方能来往不是. WSMessages 这个类就是在 Web services fra

  • PHP 网络开发详解之远程文件包含漏洞

    以下代码(Code)实现了根据浏览器地址栏参数的文件名称包含不同文件的功能. 复制代码 代码如下: <?php $file_name = $_GET["filename"]; //获得当前文件名 include("$file_name "); //包含文件 //一些其他操作 ?> 这时,通过在地址栏上指定不同的文件名就可以实现包含不同文件并执行的功能.例如,通过在浏览器上访问http://localhost/test.php?filename=myinc

  • 使用php测试硬盘写入速度示例

    复制代码 代码如下: <?phpset_time_limit(0);$str = str_pad($str, 512, "0");$file = fopen("./temp","a+");$i = 0;$bytes = 1000000000;$mygabyte = $bytes/1000000;echo "test start. waiting ...";$starttime = time();while($i <

  • 如何使用PHP获取网络上文件

    <!-- generateindex.php --><?php//设置我们将要使用的文件$srcurl = "http://localhost/index.php";$tempfilename = "tempindex.html";$targetfilename = "index.html";?><HTML><HEAD><TITLE>Generating <?php echo(&q

  • Android编程简单获取网络上的图片

    本文实例讲述了Android编程简单获取网络上的图片的方法.分享给大家供大家参考,具体如下: 要获取网络上的图片,首先得有网络的访问权限,这个不再写了,以前的文章中写过,还有布局方式不再写了,就是写也是一个简单的布局,没有多大意义,直接上核心代码: 这是本人使用的一个简单的类,来获取网上的图片. public static Bitmap getImage(String Url) throws Exception { try { URL url = new URL(Url); String res

  • Android网络编程之获取网络上的Json数据实例

    为要获取网络上的Json所以需要服务器端提供的支持. 一.创建服务器端: 服务器端项目结构: 服务器端运行效果图: 第一步:创建业务所需的JavaBean 复制代码 代码如下: package com.jph.sj.model;   import java.util.Date;   /**  * 新闻实体类  * @author jph  * Date:2014.09.26  */ public class News {     private Integer id;     private S

  • 使用golang获取linux上文件的访问/创建/修改时间

    在linux上想获取文件的元信息,我们需要使用系统调用lstat或者stat. 在golang的os包里已经把stat封装成了Stat函数,使用它比使用syscall要方便不少. 这是os.Stat的原型: func Stat(name string) (FileInfo, error)     Stat returns a FileInfo describing the named file. If there is an error, it     will be of type *Path

  • Java/Android 获取网络重定向文件的真实URL的示例代码

    前言: 今天在测试使用第三方提供的URL进行文件下载的时候,得到了一个被重定向的url.很不幸的是这个URL对于我来说没办法进行文件下载.这时候就需要获得重定向文件的真实URL. 问题分析 : 其实Java 使用HttpURLConnection下载的的时候,会自动下载重定向后的文件,但是我们无法获知目标文件的真实文件名,文件类型,用下面的方法可以得到真实的URL 解决方案 : 需要注意的是在Android 4.0之后网络请求不能在主线程执行 new Thread(new Runnable()

  • js获取判断上传文件后缀名的示例代码

    复制代码 代码如下: function lastname(){ //获取欲上传的文件路径var filepath = document.getElementById("file1").value; //为了避免转义反斜杠出问题,这里将对其进行转换var re = /(\\+)/g; var filename=filepath.replace(re,"#");//对路径字符串进行剪切截取var one=filename.split("#");//获

  • Android 实现无网络传输文件的示例代码

    最近的项目需要实现一个 Android 手机之间无网络传输文件的功能,就发现了 Wifi P2P(Wifi点对点)这么一个功能,最后也实现了通过 Wifi 隔空传输文件 的功能,这里我也来整理下代码,分享给大家. Wifi P2P 是在 Android 4.0 以及更高版本系统中加入的功能,通过 Wifi P2P 可以在不连接网络的情况下,直接与配对的设备进行数据交换.相对于蓝牙,Wifi P2P 的搜索速度和传输速度更快,传输距离更远 实现的效果如下所示: 客户端.png 服务器端.png 一

  • java获取网络图片上传到OSS的方法

    OSS不支持通过一个网络地址来上传图片,所以若想将网络上的图片上传到OSS上需要走点弯路. 1.通过链接将图片下载到本地的一个文件夹下面 2.用OSS上传该文件夹下的文件 3.上传完成后删除本地的文件 具体代码如下: //获取当前项目的绝对路径 public static String getTomcatPath(){ String nowpath; String tempdir; nowpath=System.getProperty("user.dir"); tempdir=nowp

  • 微信小程序 如何获取网络状态

    前言 手机连接到互联网有几种方式:Wifi.2G.3G.4G,包括很快到来的5G,每种方式的上传速度和下载速度差异很大,它们的计费方式的差异也导致用户在使用互联网服务的时候有不同的使用习惯. Wifi相对于其他几种网络连接方式,其速度会更快.Wifi一般都是免费供用户使用,通过移动数据网络是需要根据使用流量进行计费的.我们考虑这样一个场景,小程序需要下载一些文档,然后通过小程序的能力去预览这个文档,这些文档可能文件体积比较大,对于某些用户来说,他们并不想耗费太多的数据流量去预览文档.考虑到这样的

  • Java 如何获取url地址文件流

    目录 获取url地址文件流 根据url获取文件的二进制 上代码 获取url地址文件流 /** * 根据url下载文件流 * @param urlStr * @return */ public static InputStream getInputStreamFromUrl(String urlStr) { InputStream inputStream=null; try { //url解码 URL url = new URL(java.net.URLDecoder.decode(urlStr,

随机推荐