В одном из проектов мне пришлось использовать сурл для парсинга внешних ресурсов и сохранение данных на свое стороне. Обычно я использую встроенное расширение php, которое достаточно очень гибкое и на которое жаловатся у меня нет причины, но всё же решил использовать расширение для yii2.
Экстеншен можно взять здесь http://www.yiiframework.com/extension/yii2-curl/
В принципе в документации и так всё доступно и понятно, но всё же я повторюсь.
Установка осуществляется полностью из composer
Достаточно набрать команду
root@kostiahome:/var/www/wap/www# composer require --prefer-dist "linslin/yii2-curl:*"
Сразу хочу упомянуть, что composer у меня как встроенная команда и запускается из любого места.
После в контролёр или в модель необходимо прописать подключение нэймспейса curl после строчки namespase
use linslin\yii2\curl;
Метод будет выглядеть так
public function actionCurl($value =0) { $url = 'http://yandex.ru/search/'; $curl = new curl\Curl(); //post http://example.com/, reset request before $response = $curl->reset()->setOption( CURLOPT_POSTFIELDS, http_build_query(array( 'text' => $value ) ))->post($url); return $curl->response; }