PHP code example of rexlabs / array-object
1. Go to this page and download the library: Download rexlabs/array-object 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/ */
rexlabs / array-object example snippets
exlabs\ArrayObject\ArrayObject;
// Initialise from an Array
$obj = ArrayObject::fromArray([...]);
// Initialise from a JSON encoded string
$obj = ArrayObject::fromJson($str);
// Output to array
$arr = $obj->toArray();
// Output to JSON encoded string
$json = $obj->toJson();
$obj->books; // Instance of ArrayObject
$obj->books->pluckArray('author'); // array [ 'George Orwell', 'Jane Austen' ]
$obj->pluckArray('books.author'); // array [ 'George Orwell', 'Jane Austen' ]
$obj->books->count(); // 2
$obj->books->isCollection(); // true
$obj->books[0]; // Instance of ArrayObject
$obj->books[0]->isCollection(); // false
$obj->books[0]->id; // 1
$obj->get('books.0'); // ArrayObject
$obj->get('books.0.title'); // "1984"
$obj->get('books.1.title'); // "Pride and Prejudice"
$obj->get('books.0.missing', 'Default value'); // "Default value"
$obj->books[0]; // ArrayObject
$obj->books[0]->title; // "1984"
$obj->books[1]->title; // "Pride and Prejudice"
$obj->books[0]->missing; // throws InvalidPropertyException
$obj->get('books'); // ArrayObject
$obj->getRaw('books'); // (array)
$obj->get('books.0.title'); // "1984"
$obj->getRaw('books.0.title'); // "1984"
$obj->set('some.deep.key', $value); // Set nested property
$obj->set('some_key', $anotherArrayObject); // Pass an ArrayObjectInterface as value
$obj->has('books'); // true
$obj->has('books.0.id'); // true
$obj->has('books.1.name'); // false
$obj->has('books.5'); // false
$obj->books->each(function($book) {
echo "ID: {$book->id}, title: {$book->title}\n";
});
foreach ($obj->books as $book) {
echo "ID: {$book->id}, title: {$book->title}\n";
}
foreach ($obj->books as $book) {
echo "ID: {$book->id}, title: {$book->title}\n";
}
$titles = $obj->books->pluck('title'); // ArrayObject
$arr = $titles->toArray(); // ['1984', 'Pride and Prejudice']
$arr = $obj->books->pluckArray('title'); // ['1984', 'Pride and Prejudice']
$obj->count(); // 1
$obj->books->count(); // 2
$obj->books[0]->count(); // 1
$obj->hasItems();
// Only return items with a title
$filteredBooksWithTitle = $obj->books->filter(function($book) {
return $book->has('title');
});
// Only return items with a title
$filteredBooksWithTitle = $obj->books->filter(["title" => '1984']);
$obj->books[0]->toArray(); // [ 'id' => 1, 'title' => '1984', 'author' => 'George Orwell' ]
$obj->get(1)->toArray(); // [ 'id' => 2, 'title' => 'Pride and Prejudice', 'author' => 'Jane Austen' ]
$obj->books->toArray(); // [ [ 'id' => 1, 'title' => '1984', 'author' => 'George Orwell' ], [ 'id' => 2, 'title' => 'Pride and Prejudice', 'author' => 'Jane Austen' ] ]
$obj->toArray(); // [ 'books' => [ [ 'id' => 1, 'title' => '1984', 'author' => 'George Orwell' ], [ 'id' => 2, 'title' => 'Pride and Prejudice', 'author' => 'Jane Austen' ] ] ]
$json = $obj->toJson(); // '{ "some_prop": [ "val1", "val2" ] }`
$obj->books->isCollection(); // true
$obj->get('books.0')->isCollection(); // false
$obj->isCollection(); // false
$obj->unshift('value')
->unshift('value1', 'value2', 'value3');
$item = $obj->shift(); // ArrayObject
$obj->push('value')
->push('value1', 'value2', 'value3');
$item = $obj->pop(); // ArrayObject