diff --git a/src/Curl/Curl.php b/src/Curl/Curl.php index 7beae7a..e29592f 100644 --- a/src/Curl/Curl.php +++ b/src/Curl/Curl.php @@ -207,7 +207,7 @@ class Curl // php_raw_url_encode() // php_url_encode() // https://github.com/php/php-src/blob/master/ext/standard/http.c - return urlencode($k) . '=' . urlencode(strval($v)); + return urlencode(strval($k)) . '=' . urlencode(strval($v)); }, array_keys($data), array_values($data))); } diff --git a/tests/PHPCurlClass/PHPCurlClassTest.php b/tests/PHPCurlClass/PHPCurlClassTest.php index fed7c61..c44cda8 100644 --- a/tests/PHPCurlClass/PHPCurlClassTest.php +++ b/tests/PHPCurlClass/PHPCurlClassTest.php @@ -72,6 +72,15 @@ class CurlTest extends \PHPUnit\Framework\TestCase } } + public function testBuildPostDataIntegerKey() + { + $curl = new Curl(); + $this->assertEquals('abc=foo&123=bar', $curl->buildPostData([ + 'abc' => 'foo', + '123' => 'bar', + ])); + } + public function testUserAgent() { $php_version = preg_replace('/([\.\+\?\*\(\)\[\]\^\$\/])/', '\\\\\1', 'PHP/' . PHP_VERSION);