smidswater / abos
A Better Object Syntax
Installs: 10
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 2
Forks: 0
Open Issues: 0
pkg:composer/smidswater/abos
This package is auto-updated.
Last update: 2025-10-11 22:22:29 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"
}
}