apie/serializer

Composer package of the apie library: serializer
7,340
Install
composer require apie/serializer
Latest Version:1.0.0-RC2
PHP:>=8.3
License:MIT
Last Updated:Oct 13, 2026
Links: GitHub  ·  Packagist
Maintainer: pjordaan

Latest Stable Version Total Downloads Latest Unstable Version License PHP Composer

PHP Composer

This package is part of the Apie library. The code is maintained in a monorepo, so PR's need to be sent to the monorepo

Documentation

The Apie serializer serializes stored data to the customers or backwards. It is very similar to the Symfony serializer, except the context array in Symfony serializer is replaced with a ApieSerializerContext which also contains method for recursive calls. It still has the same logic related to decoding/encoding/normalizing and denormalizing.

Normalization and denormalization Usage

The simples use is just calling the static method create or customize it with the constructor method:

use Apie\Core\Context\ApieContext;
use Apie\Serializer\Serializer;

$serializer = Serializer::create();
// returns new SerializedHashmap(['id' => 'example@example.com', 'password' => 'p@ssW0rd'])
$serializer->normalize(new User('example@example.com', 'p@ssW0rd'), new ApieContext());
// returns new User('example.com', 'p@ssW0rd')
$serializer->denormalizeNewObject(
    ['id' => 'example@example.com', 'password' => 'p@ssW0rd'],
    User::class,
    new ApieContext()
);

Customization

To add your own normalization logic, you need to add a class implementing Apie\Serializer\Interfaces\NormalizerInterface. To add your own denormalization logic, you need to add a class implementing Apie\Serializer\Interfaces\DenormalizerInterface.

Related Packages

doctrine/dbal

Powerful PHP database abstraction layer (DBAL) with many features for database s...

644,549,754 9,698
laravel/framework

The Laravel Framework.

598,760,099 34,966
laravel/tinker

Powerful REPL for the Laravel framework.

507,193,856 7,441
laravel/serializable-closure

Laravel Serializable Closure provides an easy and secure way to serialize closur...

423,477,751 607
nunomaduro/collision

Cli error handling for console/command-line PHP applications.

399,241,428 4,660

Version History

Pre-releases (1)
Version Released PHP License
1.0.0-RC2 >=8.3 MIT