php中请求url的五种方法总结


Posted in PHP onJuly 13, 2017

本文主要给大家介绍了关于php中请求url的五种方法,分享出来供大家参考学习,下面话不多说,来一起看看详细的介绍:

五种方法:

  • 前三种都是php基本的文件操作函数
  • curl()是php扩展需要开启,linux下需要安装
  • exec()执行的是linux命令行下的命令wget下载远程文件

其中wget命令在本地虚机测试请求http://www.baidu.com时,没有成功,在远程服务器上却可以,考虑时DNS解析的问题,于是直接请求IP成功下载了index.html的文件。

这里只提供了方法,其中的优缺点需要详细了解每一个方法的功能和缺陷。

一、fopen()函数

$file = fopen("https://3water.com", "r") or die("打开远程文件失败!");
while (!feof($file)) {
 $line = fgets($file, 1024);
 //使用正则匹配标题标记
 if (preg_match("/<title>(.*)<\/title>/i", $line, $out)) { 
 $title = $out[1]; //将标题标记中的标题字符取出
 break; //退出循环,结束远程文件读取
 }
}
fclose($file);

二、file()函数

$lines = file("https://3water.com/article/48866.htm");
readfile(https://3water.com/article/48866.htm);

三、file_get_contents()函数

$content = file_get_contents(https://3water.com/article/48866.htm);

四、curl() 请求远程url数据

$url = "http://www.baidu.com";
$ch = curl_init();
$timeout = 5;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$contents = curl_exec($ch);
curl_close($ch);

五、exec() 执行命令行命令

//exec("wget 220.181.111.188");
shell_exec("wget 220.181.111.188");

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

PHP 相关文章推荐
PHP防CC攻击实现代码
Dec 29 PHP
php在文件指定行中写入代码的方法
May 23 PHP
基于ubuntu下nginx+php+mysql安装配置的具体操作步骤
Apr 28 PHP
解析ajax事件的调用顺序
Jun 17 PHP
destoon调用自定义模板及样式的公告栏
Jun 21 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(三)
Jun 23 PHP
php单态设计模式(单例模式)实例
Nov 18 PHP
详解PHP中的PDO类
Jul 06 PHP
PHP中如何判断exec函数执行成功?
Aug 04 PHP
PHP调用Mailgun发送邮件的方法
May 04 PHP
PHP levenshtein()函数用法讲解
Mar 08 PHP
php中文语义分析实现方法示例
Sep 28 PHP
Laravel 5.4重新登录实现跳转到登录前页面的原理和方法
Jul 13 #PHP
php获取'/'传参的值简单方法
Jul 13 #PHP
php多文件打包下载的实例代码
Jul 12 #PHP
php实现网页端验证码功能
Jul 11 #PHP
阿里云PHP SMS短信服务验证码发送方法
Jul 11 #PHP
PHP实现阿里大鱼短信验证的实例代码
Jul 10 #PHP
yii2局部关闭(开启)csrf的验证的实例代码
Jul 10 #PHP
You might like
改德生G88 - 加装等响度低音提升电路
2021/03/02 无线电
缓存技术详谈―php
2006/12/14 PHP
PHP Session机制简介及用法
2014/08/19 PHP
Yii快速入门经典教程
2015/12/28 PHP
浅析PHP类的反射来实现依赖注入过程
2018/02/06 PHP
PHP网页缓存技术优点及代码实例
2020/07/29 PHP
js 判断checkbox是否选中的实现代码
2010/11/23 Javascript
javascript 进阶篇1 正则表达式,cookie管理,userData
2012/03/14 Javascript
qq悬浮代码(兼容各个浏览器)
2014/01/29 Javascript
如何将php数组或者对象传递给javascript
2014/03/20 Javascript
9款2014最热门jQuery实用特效推荐
2014/12/07 Javascript
今天抽时间给大家整理jquery和ajax的相关知识
2015/11/17 Javascript
ES6中如何使用Set和WeakSet
2016/03/10 Javascript
JS匿名函数实例分析
2016/11/26 Javascript
jquery+ajax实现省市区三级联动 (封装和不封装两种方式)
2017/05/15 jQuery
vue项目国际化vue-i18n的安装使用教程
2018/03/14 Javascript
详解vue-cli项目中怎么使用mock数据
2018/05/29 Javascript
jQuery基于闭包实现的显示与隐藏div功能示例
2018/06/09 jQuery
Node.js log4js日志管理详解
2018/07/31 Javascript
解决angular2 获取到的数据无法实时更新的问题
2018/08/31 Javascript
jQuery实现手风琴特效
2021/01/11 jQuery
python使用smtplib模块通过gmail实现邮件发送的方法
2015/05/08 Python
PyQt5实现暗黑风格的计时器
2019/07/29 Python
Python函数中的可变长参数详解
2019/09/12 Python
Django-rest-framework中过滤器的定制实例
2020/04/01 Python
linux 下selenium chrome使用详解
2020/04/02 Python
Python如何读写CSV文件
2020/08/13 Python
Python unittest discover批量执行代码实例
2020/09/08 Python
安德玛加拿大官网:Under Armour加拿大
2019/10/02 全球购物
大学生就业推荐信范文
2013/11/29 职场文书
幼儿园教师工作制度
2014/01/22 职场文书
股东合作协议书
2014/04/14 职场文书
学习保证书怎么写
2015/02/26 职场文书
2015年车间安全管理工作总结
2015/05/13 职场文书
2015高中教师个人工作总结
2015/07/21 职场文书
mysql分表之后如何平滑上线详解
2021/11/01 MySQL