note 117733 added to function.curl-version

From: Date: Thu, 30 Jul 2015 10:04:51 +0000
Subject: note 117733 added to function.curl-version
Groups: php.notes 
Request: Send a blank email to php-notes+get-203220@lists.php.net to get a copy of this message
If you want to check if your curl supports ssl, it is not good idea to go with curl_version()['ssl_version'], e.g. <?php if (stripos(curl_version()['ssl_version'], "openssl") !== false) { ?> as curl says here http://curl.haxx.se/docs/faq.html#Does_curl_work_build_with_other it may use other ssl library than OpenSSL (which does not have anything to do with that separated openssl extension, curl has its own openssl library) so as described here http://curl.haxx.se/libcurl/c/curl_version_info.html it is better to go with CURL_VERSION_SSL bitmask check rather than curl_version()['ssl_version']. Note that not all of those constants stated on official cURL website are available in php, but only these four constants: [CURL_VERSION_IPV6] => 1 [CURL_VERSION_KERBEROS4] => 2 [CURL_VERSION_SSL] => 4 [CURL_VERSION_LIBZ] => 8 I tested this on Windows by disabling "openssl" extension in php.ini and noticed curl has nothing to do with that separated openssl extension but it has its own openssl, in other word, disabling openssl extension does not affect on curl_version()['ssl_version']. So if you want to check if curl has support for ssl, you should not rely on existence of that separated openssl extension and above I explained you should not rely on curl_version()['ssl_version'] neither. The only reliable way is CURL_VERSION_SSL bitmask checking: <?php if (!curl_version()['features'] & CURL_VERSION_SSL) { echo "SSL is not supported with this cURL installation."; } ?> ---- Server IP: 91.199.167.223 Probable Submitter: 2.177.153.168 ---- Manual Page -- http://php.net/manual/en/function.curl-version.php Edit -- https://master.php.net/note/edit/117733 Del: integrated -- https://master.php.net/note/delete/117733/integrated Del: useless -- https://master.php.net/note/delete/117733/useless Del: bad code -- https://master.php.net/note/delete/117733/bad+code Del: spam -- https://master.php.net/note/delete/117733/spam Del: non-english -- https://master.php.net/note/delete/117733/non-english Del: in docs -- https://master.php.net/note/delete/117733/in+docs Del: other reasons-- https://master.php.net/note/delete/117733 Reject -- https://master.php.net/note/reject/117733 Search -- https://master.php.net/manage/user-notes.php

« previous php.notes (#203220) next »