* [PHP] - Add FormDataProcessor to handle nested ModelInterface data
* Generating samples
* Updates php-nextgen and psr-18
* Adds tests
* Some more tests
* One last test
* Updating files
* Fixing diff
* Test fix
* Updating samples
* Output of CLI commands per PR comments
* Rebuilding PHP examples, PSR-18
* Rebuilding PHP examples
* Adds explanation for ::flatten_array(); optimized array_is_list pollyfill
* [PHP] Fix converting objects to formdata
* flatten_array -> flattenArray to match code style
* Adds unit test
* Revert "Output of CLI commands per PR comments"
This reverts commit 2eaa93731c354c9cb64a41187ba25a1b271cfdea.
* Includes php-nextgen; tightens up ::toFormValue()
* Missing ArrayAccess import
* Adds test for refactored ObjectSerializer::toFormValue()
This allows users to use APIs that require booleans in query params not to be cast to int, e.g. `&foo=true`. Currently, `true` is cast to `1` so it's passed as `&foo=1`. That might not be supported by the target API.
The fix contains copy-pasted function from guzzlehttp/psr7 `Query::build()` with minor tweak.
* exclude query params when they are not required
* fix check on empty
* update samples
* fix
* add tests
* update test
* Fix style
I guess PHPCodeSniffer would find PSR12 violated but we use CS-Fixer
instead. Anyway, conditions should contain spaces between logical
operators for readability.
* Apply CS-Fixer changes to templates
* Refresh samples
* Add required param to docblock
Co-authored-by: Yuriy Belenko <yura-bely@mail.ru>
* Update ObjectSerializer::toQueryValue method
It looks a bit ugly right now, but at least all tests has been passed.
* Add tests of query serialization
I used fixtures from OpenAPISpec main doc. Some prop combinations are not
officially documented yet, for instance behavior for nested objects and
arrays.
* Add test fixture from @nadar
* Add tests of Guzzle query build failure
* Add query build wrapper static method
Co-authored-by: Yuriy Belenko <yura-bely@mail.ru>
* fixing precision for php
* remove a bracket
* handling whitespace
* format comment
* Use regexp to trim needless microseconds
That way we can save timezone suffix.
Co-authored-by: Carmen Quan <cquan@launchdarkly.com>
* Handle \SplFileObject before primitive(to avoid php8 settype() error)
* Add test case
* Add array check to fix type error
Code throws error:
array_key_exists() expects parameter 2 to be array, null given
When $httpHeaders argument is null.
Co-authored-by: Yuriy Belenko <yura-bely@mail.ru>