A Better Object Syntax

0.0.3 2018-06-26 11:36 UTC

This package is auto-updated.

Last update: 2025-06-11 21:44:32 UTC


README

A better object syntax, JSON and PHP Array

Installation

Composer

composer require smidswater/abos

API

\Smidswater\ABOS::decode(/* JSON HERE */); //eg. file.json or "{stringified json}" or array

What does it solve?

With this module your json / array becomes self-conscious so you can use @top (Root of JSON), @parent (Parent of current scope) or @this (Current scope).

Demo

var_dump(ABOS::decode([
    'jsonItem1' => 'Hello',
    'jsonItem2' => [
        'jsonItem3' => '${@top.jsonItem1} W',
        'jsonItem4' => '${@this.jsonItem3}or'
    ],
    'jsonItem3' => [
        'jsonItem5' => '${@this.jsonItem4}',
        'jsonItem4' => '${@parent.jsonItem2.jsonItem4}ld'
    ]
]));

Resolves to

{
    "jsonItem1": "Hello",
    "jsonItem2": {
        "jsonItem3": "Hello W",
        "jsonItem4": "Hello Wor"
    },
    "jsonItem3": {
        "jsonItem5": "Hello World",
        "jsonItem4": "Hello World"
    }
}