talanov / data-transfer
Simple library of Data Transfer Object for PHP
1.0.4
2026-06-17 17:59 UTC
Requires
- php: ^8.4
- nesbot/carbon: ^3
Requires (Dev)
- phpunit/phpunit: ^11.0
- rector/rector: dev-main
README
No overheads, no hidden magic.
Installation setup
composer require talanov/data-transfer
Usage
use Talanov\DataTransferObject\Attributes\Cast; use Talanov\DataTransferObject\Casts\UppercaseCast; use Talanov\DataTransferObject\DataTransferObject; final class AccountData extends DataTransferObject { public string $name; #[Cast(UppercaseCast::class)] public string $currency; public ?string $iban = null; #[Cast('float', 0.0)] public ?float $balance = null; public ?string $description = null; }
$account = new AccountData([ 'name' => 'My account', 'currency' => 'EUR', 'iban' => 'DE89370400440532013000', 'balance' => '123.45', 'description' => 'My first account', ]);