This package allows you to transform data from from a api to a format that you need.
$ composer install flaver/php-transformer Then add the composer autoload file to your application. And you are good to go
<?php include 'vendor/autoload.php'; $data = new MyApiService()->getData(); $transfomer = \PHPTransformer\Factory::create(); $orders = $transfomer->getArrayFromValue($data['orders']);Important When you are transforming to a object your given value is found in the value property of the object. This does not count for array's, there are the keys mapped as property names.
string => int, float, array, boolean, object, date
int => string, float, array, boolean, object
float => string, int, array, boolean, object
array => string, int, float, object
boolean => string, int, float, array, object
json => string, array, object
<?php $transformer = \PHPTransformer\Factory::create(); // Output: ['Lorem', 'Ipsum'] $transformer->getArrayFromValue("Lorem Ipsum"); // Output: stdClass: { test => "test" } $transformer->getObjectFromValue('{"test": test}'); // Output: 1.0 $transformer->getFloatFromValue(1); // Output: 1 $transformer->getIntFromValue("1"); // Output: "1 asd 2" $transformer->getStringFromValue([1, 'asd', 2]); // Output: true $transformer->getBooleanFromValue('true'); // Output: DateTime object $transformer->getDateTimeFromValue('now');