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 伪造ip以及url来路信息方法汇总
Nov 25 PHP
PHP中使用Imagick操作PSD文件实例
Jan 26 PHP
php实现汉字验证码和算式验证码的方法
Mar 07 PHP
PHP数组操作――获取数组最后一个值的方法
Apr 14 PHP
Zend Framework教程之模型Model用法简单实例
Mar 04 PHP
yii2整合百度编辑器umeditor及umeditor图片上传问题的解决办法
Apr 20 PHP
PHP实现四种基础排序算法的运行时间比较(推荐)
Aug 11 PHP
PHP打印输出函数汇总
Aug 28 PHP
php生成无限栏目树
Mar 16 PHP
thinkPHP5框架闭包函数与子查询传参用法示例
Aug 02 PHP
基于php伪静态的实现方法解析
Jul 31 PHP
php中使用array_filter()函数过滤数组实例讲解
Mar 03 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处理文件的小例子(解压缩,删除目录)
2013/02/03 PHP
CI框架源码阅读,系统常量文件constants.php的配置
2013/02/28 PHP
PHP实现单例模式最安全的做法
2014/06/13 PHP
PHP图像裁剪缩略裁切类源码及使用方法
2016/01/07 PHP
OAuth认证协议中的HMACSHA1加密算法(实例)
2017/10/25 PHP
PHP实现数据库的增删查改功能及完整代码
2018/04/18 PHP
实例讲解PHP中使用命名空间
2019/01/27 PHP
解决thinkphp5未定义变量会抛出异常,页面错误,请稍后再试的问题
2019/10/16 PHP
javascript里的条件判断
2007/02/27 Javascript
选择复选框按钮置灰否则按钮可用
2014/05/22 Javascript
JS实现图片产生波纹一样flash效果的方法
2015/02/27 Javascript
AngularJS基础 ng-switch 指令简单示例
2016/08/03 Javascript
利用Angular.js限制textarea输入的字数
2016/10/20 Javascript
微信小程序遇到修改数据后页面不渲染的问题解决
2017/03/09 Javascript
js+canvas实现滑动拼图验证码功能
2018/03/26 Javascript
JS 实现获取验证码 倒计时功能
2018/10/29 Javascript
JS通过ajax + 多列布局 + 自动加载实现瀑布流效果
2019/05/30 Javascript
微信小程序实现一张或多张图片上传(云开发)
2019/09/25 Javascript
微信小程序实现二维码签到考勤系统
2020/01/16 Javascript
[00:32]DOTA2上海特级锦标赛 Ehome战队宣传片
2016/03/03 DOTA
[01:16:28]DOTA2-DPC中国联赛 正赛 iG vs Magma BO3 第二场 2月23日
2021/03/11 DOTA
Python写的Socks5协议代理服务器
2014/08/06 Python
Python中几种操作字符串的方法的介绍
2015/04/09 Python
python中xrange用法分析
2015/04/15 Python
Python中字符串对齐方法介绍
2015/05/21 Python
python字符串对其居中显示的方法
2015/07/11 Python
windows下安装Python和pip终极图文教程
2017/03/05 Python
pyenv虚拟环境管理python多版本和软件库的方法
2019/12/26 Python
浅谈pytorch中的BN层的注意事项
2020/06/23 Python
小米乌克兰网上商店:Xiaomi.UA
2019/10/29 全球购物
.TTL是什么?有什么用处,通常那些工具会用到它?(ping? traceroute? ifconfig? netstat?)
2016/05/09 面试题
青年创业培训欢迎词
2014/01/10 职场文书
出国导师推荐信
2014/01/16 职场文书
总会计师岗位职责
2014/02/19 职场文书
幼儿园小班工作总结2015
2015/04/25 职场文书
Python实现归一化算法详情
2022/03/18 Python