PHP - проверка прокси многопоточный - PullRequest
0 голосов
/ 21 ноября 2018

Я уже сделал свой личный однопотоковый прокси-сервер проверки с использованием php, но я не мог сделать его многопоточным, несколько дней назад я нашел один тестер, использующий многопоточность на github, может кто-нибудь помочь изменить его, чтобы сохранить хорошие проксив файл (ip: формат порта)?

https://raw.githubusercontent.com/samuel-allan/FastProxyChecker/master/checker.php

Что я пробовал:

original line 91:
echo json_encode($arr);

changed to:

$json = json_decode($arr);
$good_proxie = $json['arr']['result']['proxy']['ip'];
echo "$good_proxie";

1 Ответ

0 голосов
/ 21 ноября 2018

Я не проверял, но думаю, что это сработает ^ _ ^

function CheckMultiProxy($proxies, $timeout, $proxy_type)
{
    $data = array();
    foreach($proxies as $proxy)
    {
        $parts = explode(':', trim($proxy));
        $url = strtok(curPageURL(),'?');
        $data[] = $url . '?ip=' . $parts[0] . "&port=" . $parts[1] . "&timeout=" . $timeout . "&proxy_type=" . $proxy_type;
    }
    $results = multiRequest($data);
    $holder = array();
    foreach($results as $result)
    {

        $holder[] = json_decode($result, true)["result"];
    }
    $arr = array("results" => $holder);

    foreach ($arr['results'] as $proxy) {
        if ($proxy['success']) {
           file_put_contents('YOUR_FILE_HERE', $proxy['proxy']['ip'].':'.$proxy['proxy']['port'].' '.$proxy['proxy']['type'].PHP_EOL, FILE_APPEND);
        }
    }

    echo json_encode($arr);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...