ray / identity-value-module
Fund package maintenance!
koriym
Installs: 203 484
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 4
Forks: 1
Open Issues: 0
Requires
- php: ^7.3 || ^8.0
- ramsey/uuid: ^3.9 || ^4.1
- ray/di: ^2.11.3
Requires (Dev)
- bamarni/composer-bin-plugin: ^1.4
- phpunit/phpunit: ^9.5
README
Overview
Ray.IdentityValueModule
injects identify value such as current time or UUID.
Installation
Composer install
$ composer require ray/identity-value-module
Module install
use Ray\Di\AbstractModule; use Ray\IdentityValueModule\IdentityValueModule; class AppModule extends AbstractModule { protected function configure() { $this->install(new IdentityValueModule); // $this->install(new FakeIdentityValueModule); // for testing } }
Usage
class Foo { private $uuid; private $now; private $iso8601; public function __construct( UuidInterface $uuid, NowInterface $now, Iso8601Interface $iso8601 DateTimeIntetface $dateTime) { $this->uuid = $uuid; $this->now = $now; $this->iso8601 = $iso8601; $this->dateTime = $dateTime; // Current time } public function foo() { (string) $this->>uuid; // 11111111-2222-3333-4444-4fdffa026136 (string) $this->>now; // 1970-01-01 00:00:00 $this->now->iso8601() // 2019-06-24T02:43:30+02:00 $this->$iso8601->convertOne('1970-01-01 00:00:00'); $list = [ ['a' => 0, 'created' => '1970-01-01 00:00:00'], ['a' => 0, 'created' => '1970-01-01 00:00:00'] ]; $this->$iso8601->convertList($list, ['created'); // [ // ['a' => 0, 'created' => '1970-01-01T00:00:00+01:00'], // ['a' => 0, 'created' => '1970-01-01T00:00:00+01:00'], // ] } }