1. Go to this page and download the library: Download type-lang/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/ */
type-lang / mapper example snippets
use TypeLang\Mapper\Mapping\MapType;
class ExampleObject
{
public function __construct(
#[MapType('list<non-empty-string>')]
public readonly array $names,
) {}
}
$mapper = new \TypeLang\Mapper\Mapper();
$result = $mapper->normalize(
new ExampleObject(['Example'])
);
// Expected Result:
//
// array:1 [
// "names" => array:1 [
// 0 => "Example"
// ]
// ]
$result = $mapper->denormalize([
'names' => ['first', 'second']
], ExampleObject::class);
// Expected Result:
//
// ExampleObject {#324
// +names: array:2 [
// 0 => "first"
// 1 => "second"
// ]
// }
$result = $mapper->denormalize([
'names' => ['first', 'second', ''],
], ExampleObject::class);
// Expected Result:
//
// InvalidFieldTypeValueException: Passed value of field "names" must be of type
// list<non-empty-string>, but array(3)["first", "second", ""] given at $.names[2]
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.