「未定義の定数 CURLOPT_PROTOCOLS および CURLPROTO_HTTP の使用」ですが、機能しますか?
質問
こんにちは、私たちの開発環境では、すべてのエラー、警告、通知が表示されます。私はこれを取得しています:
知らせ:未定義の定数 CURLOPT_PROTOCOLS の使用 - で「CURLOPT_PROTOCOLS」と想定されます C: otion\implementation\development\asterix\library\ExternalLibs\panda.php オンラインで 69
知らせ:未定義の定数 CURLPROTO_HTTP の使用 - では 'CURLPROTO_HTTP' と想定されます C: otion\implementation\development\asterix\library\ExternalLibs\panda.php オンラインで 69
69 行目のコード:
curl_setopt($curl, CURLOPT_PROTOCOLS, CURLPROTO_HTTP);
しかし、CURL コードは機能し、他のサーバーに送信され、必要なものを取得します。これらの通知は何を意味しますか?
どうもありがとう。
解決
これは PHP 5.2.9 のバグのようです。 #48390
ドキュメントによると、オプション「CURLOPT_PROTOCOLS」は cURL 7.19.4 以降で利用可能ですが、PHP は次のような通知を発行しています。「未定義の定数 CURLOPT_PROTOCOLS の使用 - 'CURLOPT_PROTOCOLS' と仮定します」
また、すべての「CURLPROTO_*」定数は使用できません。
未定義の定数 CURLPROTO_HTTPS の使用 - 'CURLPROTO_HTTPS' とみなされます
この設定が正確に何をするのかはわかりませんが、curl は文字列「CURLPROTO_HTTP」を解釈できないため、あなたの場合、設定はまったく適用されないと思います。どちらの方法でも機能する場合は、次のアップグレードでは定数が存在する可能性が高いため、コメントアウトした方が安全かもしれません。
他のヒント
この問題は、curl 拡張機能が有効になっていない、または利用できない場合に発生する可能性があります。
[ubuntuでcurlをダウンロードする方法][1]からcurl拡張機能をインストールしてみてください。
php-cli でスクリプトを呼び出したときに同じ問題が発生しましたが、拡張機能が cli モードで有効になっていませんでした。