@@ -783,26 +783,26 @@ private function applyResponseOptions(array $curlOptions, array $config): array
783783 */
784784 private function applyProtocolOptions (array $ curlOptions , array $ config ): array
785785 {
786- // version
787- $ version = $ config ['version ' ] ?? null ;
786+ if (empty ($ config ['version ' ])) {
787+ return $ curlOptions ;
788+ }
788789
789- if ((bool ) $ version ) {
790- $ version = sprintf ('%.1F ' , $ version );
790+ $ version = sprintf ('%.1F ' , (float ) $ config ['version ' ]);
791791
792- if ( ! defined ('CURL_HTTP_VERSION_3 ' )) {
793- define ('CURL_HTTP_VERSION_3 ' , 30 );
794- }
792+ if ( $ version === ' 3.0 ' && ! defined ('CURL_HTTP_VERSION_3 ' )) {
793+ define ('CURL_HTTP_VERSION_3 ' , 30 );
794+ }
795795
796- $ versions = [
797- '1.0 ' => CURL_HTTP_VERSION_1_0 ,
798- '1.1 ' => CURL_HTTP_VERSION_1_1 ,
799- '2.0 ' => CURL_HTTP_VERSION_2_0 ,
800- '3.0 ' => CURL_HTTP_VERSION_3 ,
801- ];
796+ $ curlVersion = match ($ version ) {
797+ '1.0 ' => CURL_HTTP_VERSION_1_0 ,
798+ '1.1 ' => CURL_HTTP_VERSION_1_1 ,
799+ '2.0 ' => CURL_HTTP_VERSION_2_0 ,
800+ '3.0 ' => CURL_HTTP_VERSION_3 ,
801+ default => null ,
802+ };
802803
803- if (isset ($ versions [$ version ])) {
804- $ curlOptions [CURLOPT_HTTP_VERSION ] = $ versions [$ version ];
805- }
804+ if ($ curlVersion !== null ) {
805+ $ curlOptions [CURLOPT_HTTP_VERSION ] = $ curlVersion ;
806806 }
807807
808808 return $ curlOptions ;
0 commit comments