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 相关文章推荐
无限级别菜单的实现
Oct 09 PHP
构建简单的Webmail系统
Oct 09 PHP
php数组应用之比较两个时间的相减排序
Aug 18 PHP
phpMyAdmin安装并配置允许空密码登录
Jul 04 PHP
浅谈php7的重大新特性
Oct 23 PHP
PHP函数nl2br()与自定义函数nl2p()换行用法分析
Apr 02 PHP
php中static和const关键字用法分析
Dec 07 PHP
phpStudy 2016 使用教程详解(支持PHP7)
Oct 18 PHP
PDO::exec讲解
Jan 28 PHP
PDO::rollBack讲解
Jan 29 PHP
解决laravel-admin 自己新建页面里 js 需要刷新一次的问题
Oct 03 PHP
浅谈laravel5.5 belongsToMany自身的正确用法
Oct 17 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
eclipse php wamp配置教程
2016/06/30 PHP
ThinkPHP框架表单验证操作方法
2017/07/19 PHP
Yii2框架数据验证操作实例详解
2018/05/02 PHP
用javascript做拖动布局的思路
2008/05/31 Javascript
jquery获取input的value问题说明
2010/08/19 Javascript
从数据结构分析看:用for each...in 比 for...in 要快些
2013/04/17 Javascript
JavaScript 匿名函数和闭包介绍
2015/04/13 Javascript
PhantomJS快速入门教程(服务器端的 JavaScript API 的 WebKit)
2015/08/06 Javascript
轻松学习jQuery插件EasyUI EasyUI创建树形网络(1)
2015/11/30 Javascript
JavaScript中rem布局在react中的应用
2015/12/09 Javascript
仅30行代码实现Javascript中的MVC
2016/02/15 Javascript
简单的jQuery banner图片轮播实例代码
2016/03/04 Javascript
基于jQuery的网页影音播放器jPlayer的基本使用教程
2016/03/08 Javascript
AngularJS中的API(接口)简单实现
2016/07/28 Javascript
深入理解JS DOM事件机制
2016/08/06 Javascript
js document.getElementsByClassName的使用介绍与自定义函数
2016/11/25 Javascript
BootStrap Tooltip插件源码解析
2016/12/27 Javascript
全面总结Javascript对数组对象的各种操作
2017/01/22 Javascript
用move.js库实现百叶窗特效
2017/02/08 Javascript
Bootstrap滚动监听组件scrollspy.js使用方法详解
2017/07/20 Javascript
js匿名函数使用&传参(实例)
2017/09/08 Javascript
jQuery实现下拉菜单动态添加数据点击滑出收起其他功能
2018/06/14 jQuery
JS选取DOM元素常见操作方法实例分析
2018/12/10 Javascript
JavaScript使用ul中li标签实现删除效果
2019/04/15 Javascript
15分钟上手vue3.0(小结)
2020/05/20 Javascript
浅谈vue.watch的触发条件是什么
2020/11/07 Javascript
Python3.5编程实现修改IIS WEB.CONFIG的方法示例
2017/08/18 Python
Python对接支付宝支付自实现功能
2019/10/10 Python
Python如何实现动态数组
2019/11/02 Python
opencv-python 提取sift特征并匹配的实例
2019/12/09 Python
pycharm 的Structure界面设置操作
2021/02/05 Python
Python plt 利用subplot 实现在一张画布同时画多张图
2021/02/26 Python
CSS3的RGBA中关于整数和百分比值的转换
2015/08/04 HTML / CSS
Dyson加拿大官方网站:购买戴森吸尘器,风扇,冷热器及配件
2016/10/26 全球购物
绿化先进工作者事迹材料
2014/01/30 职场文书
HTML页面滚动时部分内容位置固定不滚动的实现
2021/04/14 HTML / CSS