Exemplo n.º 1
0
 public function actionStart()
 {
     //http://stupid.su/php-curl_multi/
     $url = Yii::$app->request->post('url');
     ini_set('max_execution_time', 0);
     ini_set('memory_limit', '128M');
     # Определение функции, вызываемой при завершении потока
     function callback_function($response, $info, $request)
     {
         if ($info['http_code'] !== 200) {
             AngryCurl::add_debug_msg("->\t" . $request->options[CURLOPT_PROXY] . "\tFAILED\t" . $info['http_code'] . "\t" . $info['total_time'] . "\t" . $info['url']);
             return;
         } else {
             AngryCurl::add_debug_msg("->\t" . $request->options[CURLOPT_PROXY] . "\tOK\t" . $info['http_code'] . "\t" . $info['total_time'] . "\t" . $info['url']);
             return;
         }
         // Здесь необходимо не забывать проверять целостность и валидность возвращаемых данных, о чём писалось выше.
     }
     $AC = new AngryCurl('callback_function', false);
     # Включаем принудительный вывод логов без буферизации в окно браузера
     $AC->init_console();
     $AC->post($url);
     $AC->execute(200);
     //AngryCurl::print_debug();
     //return $this->render('index');
 }