`

php curl的几段小应用

    博客分类:
  • PHP
阅读更多
php 的CURL是不错的功能,下面收藏几段不错的片段

1 测试网站是否运行正常
  
<?

  if (isDomainAvailible('http://gz.itownet.cn'))
       {
               echo "Up and running!";
       }
       else
       {
               echo "Woops, nothing found there.";
       }

       //returns true, if domain is availible, false if not
       function isDomainAvailible($domain)
       {
               //check, if a valid url is provided
               if(!filter_var($domain, FILTER_VALIDATE_URL))
               {
                       return false;
               }

               //initialize curl
               $curlInit = curl_init($domain);
               curl_setopt($curlInit,CURLOPT_CONNECTTIMEOUT,10);
               curl_setopt($curlInit,CURLOPT_HEADER,true);
               curl_setopt($curlInit,CURLOPT_NOBODY,true);
               curl_setopt($curlInit,CURLOPT_RETURNTRANSFER,true);

               //get answer
               $response = curl_exec($curlInit);

               curl_close($curlInit);

               if ($response) return true;

               return false;
       }
?>



2 可以代替file_gecontents的操作
   
function file_get_contents_curl($url) {
	$ch = curl_init();

	curl_setopt($ch, CURLOPT_HEADER, 0);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //Set curl to return the data instead of printing it to the browser.
	curl_setopt($ch, CURLOPT_URL, $url);

	$data = curl_exec($ch);
	curl_close($ch);

	return $data;
}



3 保存某个网站下的所有图片
  
  function getImages($html) {
    $matches = array();
    $regex = '~http://somedomain.com/images/(.*?)\.jpg~i';
    preg_match_all($regex, $html, $matches);
    foreach ($matches[1] as $img) {
        saveImg($img);
    }
}

function saveImg($name) {
    $url = 'http://somedomain.com/images/'.$name.'.jpg';
    $data = get_data($url);
    file_put_contents('photos/'.$name.'.jpg', $data);
}

$i = 1;
$l = 101;

while ($i < $l) {
    $html = get_data('http://somedomain.com/id/'.$i.'/');
    getImages($html);
    $i += 1;
}



4 FTP应用
 
// open a file pointer
$file = fopen("/path/to/file", "r");

// the url contains most of the info needed
$url = "ftp://username:password@mydomain.com:21/path/to/new/file";

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

// upload related options
curl_setopt($ch, CURLOPT_UPLOAD, 1);
curl_setopt($ch, CURLOPT_INFILE, $fp);
curl_setopt($ch, CURLOPT_INFILESIZE, filesize("/path/to/file"));

// set for ASCII mode (e.g. text files)
curl_setopt($ch, CURLOPT_FTPASCII, 1);

$output = curl_exec($ch);
curl_close($ch);

1
0
分享到:
评论

相关推荐

    【curl】phpQuery应用

    【curl】phpQuery应用,易于学习,操作简单,用于采集。。

    CURL的学习和应用

    curl 安装、应用,绝对实用。 CURL 是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP、FTP、TELNET等。最爽的是,PHP也支持 cURL 库。本文将介绍 cURL 的一些高级特性,以及在PHP中如何运用它。

    php应用curl扩展抓取网页类.zip

    介绍一个php应用curl扩展抓取网页类,获取的信息以文件流的形式返回,而不是直接输出。正则方式抓取,抓取标题,抓取文章内容,获取抓取数据,最后进行一下测试。

    PHP中CURL的几个经典应用实例

    主要介绍了PHP中CURL的几个经典应用实例,本文讲解了cURL请求的基本步骤、在cURL中用POST方法发送数据、用cURL上传文件等内容,需要的朋友可以参考下

    php应用curl扩展抓取网页类

    一个php应用curl扩展抓取网页类,获取的信息以文件流的形式返回,而不是直接输出。正则方式抓取,抓取标题,抓取文章内容,获取抓取数据,最后进行一下测试。

    PHP中的curl使用参数详解

    PHP中的curl使用参数详解,使你应用起curl来如同庖丁解牛般熟练自如。

    PHP封装cURL工具类与应用示例

    主要介绍了PHP封装cURL工具类与应用,结合实例形式分析了php基于面向对象封装的curl请求、响应、参数设置等相关操作技巧,需要的朋友可以参考下

    Api-php-curl-class.zip

    Api-php-curl-class.zip,php curl类使发送http请求和与web apishpcurl类集成变得容易:http请求变得容易,一个api可以被认为是多个软件设备之间通信的指导手册。例如,api可用于web应用程序之间的数据库通信。通过...

    浅谈php中curl、fsockopen的应用

    下面小编就为大家带来一篇浅谈php中curl、fsockopen的应用。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    解析php中curl_multi的应用

    相信许多人对php手册中语焉不详的curl_multi一族的函数头疼不已,它们文档少,给的例子 更是简单的让你无从借鉴,我也曾经找了许多网页,都没见一个完整的应用例子。•curl_multi_add_handle •curl_multi_close •...

    php中的curl_multi系列函数使用例子

    相信许多人对php手册中语焉不详的curl_multi一族的函数头疼不已,它们文档少,给的例子 更是简单的让你无从借鉴,我也曾经找了许多网页,都没见一个完整的应用例子。 curl_multi_add_handle curl_multi_close ...

    PHP多应用授权源码,多域名授权源码,多网站授权源码,多授权系统

    注意:此授权系统授权代码请参考/public/demo/文件夹下的好几个文件,不是一句代码放在被授权的程序里面就行的,小白勿扰, 小白勿扰,请自行研究,某站卖588元的源码,我们低价提供给有需要的人研究,不提供技术支持...

    PHP Curl多线程原理实例详解

    不对之处请指教相信许多人对php手册中语焉不详的curl_multi一族的函数头疼不已,它们文档少,给的例子 更是简单的让你无从借鉴,我也曾经找了许多网页,都没见一个完整的应用例子。curl_multi_add_handle curl_multi...

    PHP100视频教程全集112集BT种子【PHP经典】

    PHP100视频教程3:常用PHP运算类型介绍与应用 PHP100视频教程4: PHP条件语句介绍与应用 PHP100视频教程5:PHP循环语句的介绍与应用 PHP100视频教程6:PHP数组的创建修改应用 PHP100视频教程7:PHP函数和自定义...

    CURL的学习和应用(附多线程实现)

    curl安装:windows下面的安装:修改php.ini文件的设置,找到php_curl.dll//取消下在的注释extension=php_curl.dll linux下面安装:复制代码 代码如下:# wget ...

    72887PHP多应用授权系统【开源】.rar

    开源PHP多应用授权系统源码 授权参考SDK /public/demo/SDK.PHP 授权提示修改 /app/api/controller/ApiController.php API设置域名后就需要改成http://xxx.xx/v1, PHP &gt;= 7.1.0 需要pdo、ZipArchive、curl 源码说明...

    PHP+Curl远程模拟登录并获取数据

    Curl在抓取网页要比file_get_contents()效率就要高些,支持多线程,并且curl提供了丰富的函数,你可以很方便的应用到webservice接口调用。

Global site tag (gtag.js) - Google Analytics