1. Go to this page and download the library: Download pfazzi/simplex-mapper 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/ */
$mapper = new \Pfazzi\SimplexMapper\Mapper();
// From Array
$userEntity = $mapper->map(source: ['name' => 'patrick'], target: UserEntity::class);
// From stdClass
$rawData = new \stdClass();
$rawData->name = 'Patrick';
$userEntity = $mapper->map(source: $rawData, target: UserEntity::class);
// From anonymous class
$rawData = new class {
public function __construct(private string $name = 'Patrick') {}
};
$userEntity = $mapper->map(source: $rawData, target: UserEntity::class);
// From object
$rawData = new UserDto('Patrick');
$userEntity = $mapper->map(source: $rawData, target: UserEntity::class);
$mapper = new \Pfazzi\SimplexMapper\Mapper();
$userEntity = $entityManager->find(UserEntity::class, 1);
// From Array
$mapper->hydrate(source: ['name' => 'patrick'], target: $userEntity);
// From stdClass
$rawData = new \stdClass();
$rawData->name = 'Patrick';
$mapper->map(source: $rawData, target: $userEntity);
// From anonymous class
$rawData = new class {
public function __construct(private string $name = 'Patrick') {}
};
$mapper->map(source: $rawData, target: $userEntity);
// From object
$rawData = new UserDto('Patrick');
$mapper->map(source: $rawData, target: $userEntity);
class Supplier
{
public function __construct(
public int $id,
public string $taxId,
public bool $onConsignment,
) {
}
}
$result = $connection->executeQuery(<<<'SQL'
SELECT
supplier.id,
supplier.tax_id AS taxId,
supplier.is_enabled AS isEnabled
FROM supplier
WHERE supplier.tax_id = :taxId
SQL, ['taxId' => $taxId]);
$data = $result->fetchAssociative();