首页 > 解决方案 > 多线程php解析器

问题描述

我有来自https://github.com/chuyskywalker/rolling-curl的带有多卷曲的 cli 解析器我需要为https://github.com/marcushat/RollingCurlX更改滚动卷曲我真的已经打破了我的大脑。抱歉,我没有示例,只有https://github.com/marcushat/RollingCurlX/blob/master/README.md https://github.com/marcushat/RollingCurlX/blob/master/src/rollingcurlx.class。 php

也许我很愚蠢或对此一无所知,但我真的需要它工作。很高兴有任何帮助。可以选择多卷曲,我需要线程。

ps 将站点添加到不带“http/s”的文件中,仅使用 [www].site.com 或仅使用 site.com

<?php
ini_set('memory_limit','-1');
require __DIR__ .'/src/RollingCurl/RollingCurl.php';
require __DIR__ .'/src/RollingCurl/Request.php';
$rc = new \RollingCurl\RollingCurl();
$i=0;
$content = file('c:/1.txt');
$arr = array();
foreach ($content as $string){
    $url = trim($string);
    $plugin = explode('.',$url);
    $plugin1 = '/'.$plugin[0];
    $url1 = $url.$plugin1;
    $arr[] = $url1;
}
print "++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++".PHP_EOL;
$sites = array_reverse($arr);
$options = array(CURLOPT_TIMEOUT => 15);
foreach ($sites as $url){
    $request = new \RollingCurl\Request($url);
    $request->setOptions($options);
    $rc->add($request);
}
$rc->setCallback(function(\RollingCurl\Request $request, \RollingCurl\RollingCurl $rc){
    $out = $request->getResponseText();
    $vuln = explode('.',$out);
    if(isset($vuln[1])){
        print PHP_EOL . $request->getUrl(). PHP_EOL;
    }else{
    }
})->execute();

标签: php

解决方案


推荐阅读