1. Go to this page and download the library: Download codemagpie/array2object library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
codemagpie / array2object example snippets
use CodeMagpie\ArrayToObject\AbstractBaseObject
class User extends AbstractBaseObject
{
public string $name;
public int $age;
public User $child;
/**
* @var User[]
*/
public array $children;
}
$arr = [
'name' => 'test',
'age' => '17',
'child' => [
'name' => 'test1',
'age' => '17',
],
'children' => [
[
'name' => 'test2',
'age' => '17',
],
],
];
$user = new User($arr);
// if the user object does not extend AbstractBaseObject, you should use:
// $user = new User();
// \CodeMagpie\ArrayToObject\ArrayToObjectBuilder::create()->bind($user);
// echo \CodeMagpie\ArrayToObject\Utils\DataHelper::objectToArray($user); // Array
echo $user->name; // test
echo $user->age; // 17
echo $user->child->name; // test1
echo $user->children[0]->name; // test2
echo $user->toArray() //Array. if extend ArrayToObjectBuilder
use CodeMagpie\ArrayToObject\AbstractLightBaseObject
/**
* @property string $name
* @property int $age
* @property User $child
* @property User[] $children
*/
class User extends AbstractLightBaseObject
{
}
$arr = [
'name' => 'test',
'age' => '17',
'child' => [
'name' => 'test1',
'age' => '17',
],
'children' => [
[
'name' => 'test2',
'age' => '17',
],
],
];
$user = new User($arr);
// if the user object does not extend AbstractLightBaseObject, you should use:
// $user = new User();
// \CodeMagpie\ArrayToObject\ArrayToObjectBuilder::createFormPropertyDocParser()->bind($user);
// echo \CodeMagpie\ArrayToObject\Utils\DataHelper::objectToArray($user);// Array
echo $user->name; // test
echo $user->age; // 17
echo $user->child->name; // test1
echo $user->children[0]->name; // test2
echo $user->toArray() //Array. if extend AbstractLightBaseObject
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.