PHP http_get против fsockopen для HTTPS-сервера? - PullRequest
1 голос
/ 18 июня 2010

В PHP, каковы основные соображения при выборе между http_get ("https: // ...") и циклом сокетов с fsockopen ("ssl: // ... "), fputs () и fread ()?

В последнее время я видел несколько реализаций, использующих последнее.Это просто старый унаследованный код или есть какая-то веская причина для этого?

Спасибо.

1 Ответ

0 голосов
/ 18 июня 2010

http_get требует расширения PECL, которое не связано с PHP.

fsockopen более сложно в использовании (требует зацикливания, отправки заголовков вручную, чтения заголовков вручную и, в общем,, больше кода), но является частью PHP (он всегда присутствует).

На мой взгляд, лучший отказоустойчивый вариант - использовать обертку http, как в:

file_get_contents('https://...')

Оболочка http, однако, имеет свой собственный набор ограничений - нет дайджест-аутентификации, нет автоматической обработки закодированного содержимого и т. Д. Так что, если либо расширение PECL http , либо расширение curl доступны, это, вероятно, будет лучшим вариантом.

...