https://github.com/jimdo/jimphle-data-structure
Jimdo PHP library extraction of data-structure component
https://github.com/jimdo/jimphle-data-structure
owner-team-creator
Last synced: about 1 year ago
JSON representation
Jimdo PHP library extraction of data-structure component
- Host: GitHub
- URL: https://github.com/jimdo/jimphle-data-structure
- Owner: Jimdo
- License: mit
- Created: 2014-02-15T18:08:33.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2022-03-10T09:55:52.000Z (over 4 years ago)
- Last Synced: 2025-03-16T06:36:40.879Z (over 1 year ago)
- Topics: owner-team-creator
- Language: PHP
- Homepage:
- Size: 28.3 KB
- Stars: 0
- Watchers: 115
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Jimphle-data-structure
Jimdo PHP library extraction of data-structure component.
This comes with a Map and a Vector and a Null implementation of the BaseInterface.
Facts:
* Immutable
* Throws InvalidPropertyException on none-existing keys
* Is able convert complete trees of different data structures to json
* Is sometimes not very efficient.
For example the fromArray method uses the Vector::isSequentialList check which copies the complete array in memory
A Vector is a representation of an array with sequential numeric indexes:
```php
$vector = new \Jimphle\DataStructure\Vector(
array(
'foo',
'bar'
)
);
echo $vector[1];
```
A Map is a representation of an array with key and value:
```php
$map = new \Jimphle\DataStructure\Map(
array(
'foo' => 'bar'
)
);
echo $map->foo;
$map = new \Jimphle\DataStructure\Map(
array(
'foo-1' => 'bar'
)
);
echo $map['foo-1'];
```
Convert an object tree to json:
```php
$map = new \Jimphle\DataStructure\Map(
array(
'who?' => new \Jimphle\DataStructure\Vector(
array(
new Jimphle\DataStructure\Map(
array(
'foo' => 'bar'
)
)
)
)
)
);
echo $map->toJson();
```