liberty_code / register
Library
Requires
- php: ~7 || ~8
- liberty_code/data: ^1.0.
- liberty_code/library: ^1.0.
This package is auto-updated.
Last update: 2024-05-05 22:21:03 UTC
README
Description
Library contains register components, allows to design engine to storage key-value pairs. Values are named items.
Requirement
- Script language: PHP: version 7 || 8
Installation
Several ways are possible:
Composer
Requirement
It requires composer installation. For more information: https://getcomposer.org
Command: Move in project root path
cd "<project_root_path>"
Command: Installation
php composer.phar require liberty_code/register ["<version>"]
Note
Include vendor
If project uses composer, vendor must be included:
require_once('<project_root_path>/vendor/autoload.php');
Configuration
Installation command allows to add, on composer file "/composer.json", following configuration:
{ "require": { "liberty_code/register": "<version>" } }
Include
Download
- Download following repository.
- Put it on repository root path.
Include source
require_once('<repository_root_path>/include/Include.php');
Usage
Item collection
Item collection allows to register item, with unique hash as key.
Elements
ItemCollection
Allows to store items with unique hash associated.
InstanceCollection
Extends item collection features. Accept only objects as item.
Referential data
Simple array data allows to manage key, value as item hash, pairs.
Register
Register allows to design save engine, to save items.
Elements
Register
Allows to design items storage engine, to manage items, on specific storage support.
MemoryRegister
Extends register features. Uses memory system, as storage support. It's composed by:
- Referential data for key storage.
- Item collection for item storage.
- Object references storage optimized: If 2 keys refer to same item, only one item stored.
TableRegister
Extends register features. Uses specific array, as storage support.
DefaultTableRegister
Extends table register features. Uses array property, as storage support.
GlobalVarRegister
Extends table register features. Uses global variable array, as storage support.
MultiRegister
Extends register features. Uses list of registers, as storage support.
Example
use liberty_code\register\register\model\DefaultRegister;
$register = new DefaultRegister();
...
$register->putItem('key_1', '...'); // Register specified item for key 1
$register->putItem('key_N', '...'); // Register specified item for key N
...
foreach($register->getTabKey() as $key) {
var_dump($register->getItem($key));
}
/**
* Show:
* item for key 1
* item for key N
*/
...