PHP code example of codemagpie / array2object

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