Я попросил использовать простой facebook api, чтобы вернуть количество понравившихся или разделяемых на работу, которые возвращают строку json. Теперь, поскольку я собираюсь сделать это для очень большого количества ссылок, что лучше:
Использование file_get_contents или cURL.
Оба они, кажется, возвращают те же результаты, и cURL кажется более сложным в использовании, но в чем разница между ними. почему большинство людей рекомендуют использовать cURL над file_get_contents? Прежде чем я запустил api, который может потребовать целый день для обработки, мне понравится обратная связь.
Несколько лет назад я сравнивал два, и CURL был быстрее. С помощью CURL вы создаете один экземпляр CURL, который может использоваться для каждого запроса, и он непосредственно сопоставляется с очень быстрой библиотекой libcurl. С помощью file_get_contents у вас есть накладные расходы на обертку протоколов, а код инициализации выполняется для каждого отдельного запроса.
Я выкопаю свой тестовый скрипт и запускаю PHP 5.3, но я подозреваю, что CURL будет все еще быстрее.
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 намного быстрее).