Подтвердить что ты не робот

Использование файла получает содержимое или завиток

Я попросил использовать простой facebook api, чтобы вернуть количество понравившихся или разделяемых на работе, которые возвращают строку json. Теперь, поскольку я собираюсь сделать это для очень большого количества ссылок, что лучше:

Использование file_get_contents или cURL.

Оба из них, похоже, возвращают те же результаты, и cURL кажется более сложным в использовании, но в чем разница между ними. почему большинство людей рекомендуют использовать cURL над file_get_contents? Прежде чем я запустил api, который может потребовать целый день для обработки, мне понравится обратная связь.

4b9b3361

Ответ 1

Несколько лет назад я сравнивал два и CURL был быстрее. С помощью CURL вы создаете один экземпляр CURL, который может использоваться для каждого запроса, и он непосредственно сопоставляется с очень быстрой библиотекой libcurl. Используя file_get_contents, у вас есть накладные расходы на обертки протоколов, а код инициализации выполняется для каждого отдельного запроса.

Я выкопаю свой тест script и запустил PHP 5.3, но я подозреваю, что CURL все равно будет быстрее.

Ответ 2

cURL поддерживает запросы https более широко, чем file_get_contents, и это не слишком сложно. Несмотря на то, что однострочное решение file_get_contents является чистым, это служебные данные за пределами сцены больше, чем cURL.

$curl_handle=curl_init();
curl_setopt($curl_handle,CURLOPT_URL,$feedURL);
curl_setopt($curl_handle,CURLOPT_CONNECTTIMEOUT,2);
curl_setopt($curl_handle,CURLOPT_RETURNTRANSFER,true);
curl_setopt($curl_handle, CURLOPT_SSL_VERIFYPEER, false);
$buffer = curl_exec($curl_handle);
curl_close($curl_handle);

Это то, что я использую для создания вызовов facebook api, поскольку многие из них требуют access_token, и facebook будет принимать информацию access_token только в безопасном соединении. Я также заметил большую разницу во времени выполнения (cURL намного быстрее).