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作的文本留言本的例子(四)
Oct 09 PHP
php mssql 分页SQL语句优化 持续影响
Apr 26 PHP
php实现用户在线时间统计详解
Oct 08 PHP
PHP开发中常见的安全问题详解和解决方法(如Sql注入、CSRF、Xss、CC等)
Apr 21 PHP
yii实现创建验证码实例解析
Jul 31 PHP
解决php表单重复提交实现方法
Sep 29 PHP
PHP入门教程之面向对象基本概念实例分析
Sep 11 PHP
PHP+mysql实现从数据库获取下拉树功能示例
Jan 06 PHP
PHP二维关联数组的遍历方式(实例讲解)
Oct 18 PHP
php 广告点击统计代码(php+mysql)
Feb 21 PHP
Laravel框架在本地虚拟机快速安装的方法详解
Jun 11 PHP
laravel withCount 统计关联数量的方法
Oct 10 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
php 大数据量及海量数据处理算法总结
2011/05/07 PHP
PHP数组函数array_multisort()用法实例分析
2016/04/02 PHP
ThinkPHP5实现作业管理系统中处理学生未交作业与已交作业信息的方法
2016/11/12 PHP
PHP判断密码强度的方法详解
2017/05/26 PHP
php实现的生成排列算法示例
2019/07/25 PHP
基于jquery1.4.2的仿flash超炫焦点图播放效果
2010/04/20 Javascript
提升你网站水平的jQuery插件集合推荐
2011/04/19 Javascript
基于jquery的防止大图片撑破页面的实现代码(立即缩放)
2011/10/24 Javascript
获取数组中最大最小值方法js代码(自写)
2013/08/12 Javascript
textarea 控制输入字符字节数(示例代码)
2013/12/27 Javascript
jQuery 自定义下拉框(DropDown)附源码下载
2016/07/22 Javascript
jquery实现ajax加载超时提示的方法
2016/07/23 Javascript
jQuery插件FusionCharts绘制的2D双面积图效果示例【附demo源码】
2017/04/11 jQuery
利用npm 安装删除模块的方法
2018/05/15 Javascript
Node.js API详解之 os模块用法实例分析
2020/05/06 Javascript
ant design vue 表格table 默认勾选几项的操作
2020/10/31 Javascript
使用Vue实现一个树组件的示例
2020/11/06 Javascript
Vue项目如何引入bootstrap、elementUI、echarts
2020/11/26 Vue.js
Python类的基础入门知识
2008/11/24 Python
CentOS6.5设置Django开发环境
2016/10/13 Python
利用Python暴力破解zip文件口令的方法详解
2017/12/21 Python
基于Python列表解析(列表推导式)
2018/06/23 Python
如何在Django中设置定时任务的方法示例
2019/01/18 Python
Python中函数的基本定义与调用及内置函数详解
2019/05/13 Python
如何用Python进行时间序列分解和预测
2021/03/01 Python
css3过渡_动力节点Java学院整理
2017/07/11 HTML / CSS
美国机场停车位预订:About Airport Parking
2018/03/26 全球购物
Hunkemöller瑞士网上商店:欧洲最大的内衣品牌之一
2018/12/03 全球购物
美国领先的男士和女士内衣购物网站:Freshpair
2019/02/25 全球购物
师生聚会感言
2014/01/26 职场文书
少年闰土教学反思
2014/02/22 职场文书
环卫工人节活动总结
2014/08/29 职场文书
高二学年自我鉴定范文(2篇)
2014/09/26 职场文书
2014年医院党建工作总结
2014/12/20 职场文书
2015年售后服务工作总结
2015/04/25 职场文书
如何制定一份可行的计划!
2019/06/21 职场文书