ali-eltaweel / array-subscript
A PHP library for accessing object properties using array subscript notation.
Installs: 65
Dependents: 1
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/ali-eltaweel/array-subscript
Requires
- php: ^8.1
- ali-eltaweel/attr-action: ^1.0.0
This package is auto-updated.
Last update: 2025-10-24 13:11:58 UTC
README
A PHP library for accessing object properties using array subscript notation.
Installation
Install array-subscript via Composer:
composer require ali-eltaweel/array-subscript
Usage
use ArraySubscript\ArrayObject; use ArraySubscript\Annotations\ArraySubscript; use ArraySubscript\Annotations\ArraySubscriptOperation; class X implements ArrayAccess { use ArrayObject; private array $data = [ 'a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, ]; #[ArraySubscript(ArraySubscriptOperation::Get)] function get(string $name): mixed { return $this->data[$name]; } #[ArraySubscript(ArraySubscriptOperation::Set)] function set(string $name, mixed $value): void { $this->data[$name] = $value; } #[ArraySubscript(ArraySubscriptOperation::Unset)] function unset(string $name): void { unset($this->data[$name]); } #[ArraySubscript(ArraySubscriptOperation::Check)] function check(string $name): bool { return isset($this->data[$name]); } }
$x = new X(); $a = $x['a']; $x['b'] = 10; if (isset($x['c'])) { unset($x['d']); }