curl_exec возвращает true
или false
по умолчанию.Вам необходимо указать CURLOPT_RETURNTRANSFER:
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
Поскольку curl_exec возвращает false
(не NULL, как указано в исходном вопросе) , попробуйте использовать curl_error () чтобы определить почему возвращает false
.
TFM (прочитайте его): curl_exec () , curl_setopt ()
Редактировать для потомков:
ОП обнаружил, что проблема с SSL была помехой.И libcurl (как вызывается через PHP), и командная строка curl
выполняют проверку однорангового SSL-соединения для каждой транзакции, если пользователь явно не отключает ее.
Вероятный сценарий состоит в том, что среда оболочки использует другуюПакет CA, чем реализация PHP libcurl.Чтобы исправить это, задайте значение CURLOPT_CAINFO, совпадающее с переменной среды CURL_CA_BUNDLE оболочки, и тогда должна работать проверка равноправия.
@ OP: Было бы любопытно узнать, подтверждается ли приведенное выше предложение работающим вваш случай, или если есть что-то другое с конфигурацией SSL.