php实现异步将远程链接上内容(图片或内容)写到本地的方法


Posted in PHP onNovember 30, 2016

本文实例讲述了php实现异步将远程链接上内容(图片或内容)写到本地的方法。分享给大家供大家参考,具体如下:

/**
 * 异步将远程链接上的内容(图片或内容)写到本地
 *
 * @param unknown $url
 *      远程地址
 * @param unknown $saveName
 *      保存在服务器上的文件名
 * @param unknown $path
 *      保存路径
 * @return boolean
 */
function put_file_from_url_content($url, $saveName = 'tmp.png', $path = './Uploads/Tmp/') {
  // 设置运行时间为无限制
  set_time_limit ( 0 );
  $url = trim ( $url );
  $curl = curl_init ();
  // 设置你需要抓取的URL
  curl_setopt ( $curl, CURLOPT_URL, $url );
  // 设置header
  curl_setopt ( $curl, CURLOPT_HEADER, 0 );
  // 设置cURL 参数,要求结果保存到字符串中还是输出到屏幕上。
  curl_setopt ( $curl, CURLOPT_RETURNTRANSFER, 1 );
  // 运行cURL,请求网页
  $file = curl_exec ( $curl );
  // 关闭URL请求
  curl_close ( $curl );
  // 将文件写入获得的数据
  $filename = $path . $saveName;
  $write = @fopen ( $filename, "w" );
  if ($write == false) {
    return false;
  }
  if (fwrite ( $write, $file ) == false) {
    return false;
  }
  if (fclose ( $write ) == false) {
    return false;
  }
  return $filename;
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
六酷社区论坛HOME页清新格调免费版 下载
Mar 07 PHP
php编写的简单页面跳转功能实现代码
Nov 27 PHP
php下载文件源代码(强制任意文件格式下载)
May 09 PHP
在PHP程序中使用Rust扩展的方法
Jul 03 PHP
Laravel 5.1 on SAE环境开发教程【附项目demo源码】
Oct 09 PHP
微信开发之php表单微信中自动提交两次问题解决办法
Jan 08 PHP
bindParam和bindValue的区别以及在Yii2中的使用详解
Mar 12 PHP
PHP递归算法的简单实例
Feb 28 PHP
php使用yield对性能提升的测试实例分析
Sep 19 PHP
php抽象方法和普通方法的区别点总结
Oct 13 PHP
php加速缓存器opcache,apc,xcache,eAccelerator原理与配置方法实例分析
Mar 02 PHP
PHP数组与字符串互相转换实例
May 05 PHP
PHP实现的同步推荐操作API接口案例分析
Nov 30 #PHP
PHP实现多图上传(结合uploadify插件)思路分析
Nov 30 #PHP
PHP获取指定日期是星期几的实现方法
Nov 30 #PHP
php根据年月获取当月天数及日期数组的方法
Nov 30 #PHP
详解PHP处理密码的几种方式
Nov 30 #PHP
php+js实现百度地图多点标注的方法
Nov 30 #PHP
php 运算符与表达式详细介绍
Nov 30 #PHP
You might like
apache+php+mysql安装配置方法小结
2010/08/01 PHP
关于js与php互相传值的介绍
2013/06/25 PHP
详解HTTP Cookie状态管理机制
2016/01/14 PHP
PHP中的使用curl发送请求(GET请求和POST请求)
2017/02/08 PHP
关于PHP转换超过2038年日期出错的问题解决
2017/06/28 PHP
MSN消息提示类
2006/09/05 Javascript
学习ExtJS TextField常用方法
2009/10/07 Javascript
jQuery 动态酷效果实现总结
2009/12/27 Javascript
javascript cookie操作类的实现代码小结附使用方法
2010/06/02 Javascript
firefox火狐浏览器与与ie兼容的2个问题总结
2010/07/20 Javascript
js获取视频时长代码
2014/04/10 Javascript
详解AngularJS中的作用域
2015/06/17 Javascript
jQuery实现图片与文字描述左右滑动自动切换的方法
2015/07/27 Javascript
js中数组结合字符串实现查找(屏蔽广告判断url等)
2016/03/30 Javascript
jquery输入数字随机抽奖特效的简单实现代码
2016/06/10 Javascript
让DIV的滚动条自动滚动到最底部的3种方法(推荐)
2016/09/24 Javascript
layui导航栏实现代码
2017/05/19 Javascript
Vue隐藏显示、只读实例代码
2018/07/18 Javascript
提升node.js中使用redis的性能遇到的问题及解决方法
2018/10/30 Javascript
简单两步使用node发送qq邮件的方法
2019/03/01 Javascript
MockJs结合json-server模拟后台数据
2020/08/26 Javascript
深入理解webpack process.env.NODE_ENV配置
2020/02/23 Javascript
使用Python的Tornado框架实现一个一对一聊天的程序
2015/04/25 Python
Python中__new__与__init__方法的区别详解
2015/05/04 Python
Python模拟登录验证码(代码简单)
2016/02/06 Python
python基础教程之匿名函数lambda
2017/01/17 Python
Python编程pygal绘图实例之XY线
2017/12/09 Python
Python装饰器模式定义与用法分析
2018/08/06 Python
在Keras中实现保存和加载权重及模型结构
2020/06/15 Python
解决tensorflow/keras时出现数组维度不匹配问题
2020/06/29 Python
HTML5中判断用户是否正在浏览页面的方法
2014/05/03 HTML / CSS
荷兰家电销售网站:Welhof
2020/12/08 全球购物
大学生职业生涯规划范文
2014/01/08 职场文书
2014年共青团工作总结
2014/12/10 职场文书
销售员岗位职责范本
2015/04/11 职场文书
写给同事的离职感言
2015/08/04 职场文书