PHP单线程和多线程调用
2016-12-01 21:45
162 查看
<?php
//curl_multi_init()
session_start();
$url = 'http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_share';
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)');
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT,43200);
$dxycontent = curl_exec($ch);
curl_close($ch);
echo $dxycontent;
?>
<?php $urlArray = array ( "http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_bbs_post&start=100000&end=5000", "http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_bbs_post&start=105000&end=5000", "http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_bbs_post&start=110000&end=5000", "http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_bbs_post&start=115000&end=5000", "http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_bbs_post&start=120000&end=5000", "http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_bbs_post&start=125000&end=5000", "http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_bbs_post&start=130000&end=5000", "http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_bbs_post&start=140000&end=5000", "http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_bbs_post&start=145000&end=5000" ); $mh = curl_multi_init(); $conn = Array(); foreach($urlArray AS $key => $url){ $conn[$key] = curl_init(); curl_setopt ($conn[$key], CURLOPT_URL, $url); curl_setopt($conn[$key], CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)'); curl_setopt ($conn[$key], CURLOPT_RETURNTRANSFER, 1); curl_setopt($conn[$key], CURLOPT_TIMEOUT,43200); curl_multi_add_handle($mh,$conn[$key]); } $running=null; // 执行批处理句柄 do { //usleep(10000); curl_multi_exec($mh,$running); } while ($running > 0 ); $results = Array(); foreach($conn as $ckey => $cvalue){ curl_close ($conn[$ckey]); //关闭语柄 $results[$ckey] = curl_multi_getcontent($conn[$ckey]); curl_multi_remove_handle ( $mh, $conn[$ckey] ); //释放资源
} curl_multi_close($mh); print_r( $results); ?>
bat调用
@echo off
echo "begin..................................."
d: \xampp\htdocs\trial
php moveUser_1.php
pause
//curl_multi_init()
session_start();
$url = 'http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_share';
$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)');
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT,43200);
$dxycontent = curl_exec($ch);
curl_close($ch);
echo $dxycontent;
?>
<?php $urlArray = array ( "http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_bbs_post&start=100000&end=5000", "http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_bbs_post&start=105000&end=5000", "http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_bbs_post&start=110000&end=5000", "http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_bbs_post&start=115000&end=5000", "http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_bbs_post&start=120000&end=5000", "http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_bbs_post&start=125000&end=5000", "http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_bbs_post&start=130000&end=5000", "http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_bbs_post&start=140000&end=5000", "http://localhost.huawei.com:8060/ecommunity/index.php?app=admin&mod=DataMove&act=moveData_bbs_post&start=145000&end=5000" ); $mh = curl_multi_init(); $conn = Array(); foreach($urlArray AS $key => $url){ $conn[$key] = curl_init(); curl_setopt ($conn[$key], CURLOPT_URL, $url); curl_setopt($conn[$key], CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)'); curl_setopt ($conn[$key], CURLOPT_RETURNTRANSFER, 1); curl_setopt($conn[$key], CURLOPT_TIMEOUT,43200); curl_multi_add_handle($mh,$conn[$key]); } $running=null; // 执行批处理句柄 do { //usleep(10000); curl_multi_exec($mh,$running); } while ($running > 0 ); $results = Array(); foreach($conn as $ckey => $cvalue){ curl_close ($conn[$ckey]); //关闭语柄 $results[$ckey] = curl_multi_getcontent($conn[$ckey]); curl_multi_remove_handle ( $mh, $conn[$ckey] ); //释放资源
} curl_multi_close($mh); print_r( $results); ?>
bat调用
@echo off
echo "begin..................................."
d: \xampp\htdocs\trial
php moveUser_1.php
pause
相关文章推荐
- OutputStreamWriter实例
- 使用tput创建屏幕输出
- Laravel5.3开发API(Dingo+Passport+Swagger)
- empty()函数应用中遇到的问题
- 10.正则表达式
- php入门
- 有关php设置时区的两个方法
- CTF——php弱类型
- 什么情况下可以不写PHP的结束标签“?>”
- phpExcel导出表格
- 209 php扩展填坑1
- PHP实现无限级分类分析
- php按周取时间段
- thinkphp一对多HAS_MANY
- Day 84:Again start from zero--php Laravel
- PHP中9大缓存技术总结
- php 用mime type 获得临时文件的后缀名
- PHP中的数学函数
- PHP观察者模式
- PHP算法