PHP code example of tony-sol / flatter
1. Go to this page and download the library: Download tony-sol/flatter 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/ */
tony-sol / flatter example snippets
$data = [
'array' => [
'key' => 'value',
'inner' => [
'key' => 1,
'with_separator' => 2,
],
],
];
$flattenData = (new \Flatter($data))->flatten();
// $flattenData = [
// 'array_key' => 'value',
// 'array_inner_key' => 1,
// 'array_inner_with_separator' => 2,
// ]
$inflatedData = (new \Flatter($flattenData))->inflate();
// $inflatedData = [
// 'array' => [
// 'key' => 'value',
// 'inner' => [
// 'key' => 1,
// 'with' => [
// 'separator' => 2,
// ],
// ],
// ],
// ];
$flattenData = (new \Flatter($data))->withCompositeKeySeparator('#')->flatten();
// $flattenData = [
// 'array#key' => 'value',
// 'array#inner#key' => 1,
// 'array#inner#with_separator' => 2,
// ]
$inflatedData = (new \Flatter($data))->withCompositeKeySeparator('#')->inflate();
// $inflatedData = [
// 'array' => [
// 'key' => 'value',
// 'inner' => [
// 'key' => 1,
// 'with_separator' => 2,
// ],
// ],
// ];
$flattenData = (new \Flatter($data))->escapingSeparatorInKeys()->flatten();
// $flattenData = [
// 'array_key' => 'value',
// 'array_inner_key' => 1,
// 'array_inner_with\_separator' => 2,
// ]
$inflatedData = (new \Flatter($flattenData))->escapingSeparatorInKeys()->inflate();
// $inflatedData = [
// 'array' => [
// 'key' => 'value',
// 'inner' => [
// 'key' => 1,
// 'with_separator' => 2,
// ],
// ],
// ];
$flattenData = (new \Flatter($data))
->applyClosureToKeys(static function (string $key) { return strtoupper($key); })
->applyClosureToValues(static function ($value) { return (string)$value; })
->flatten();
// $flattenData = [
// 'ARRAY_KEY' => 'value',
// 'ARRAY_INNER_KEY' => '1',
// 'ARRAY_INNER_WITH_SEPARATOR' => '2',
// ]
$inflatedData = (new \Flatter($flattenData))
->applyClosureToKeys(static function (string $key) { return strtolower($key); })
->applyClosureToValues(static function ($value) { return "--{$value}--"; })
->inflate();
// $inflatedData = [
// 'array' => [
// 'key' => '--value--',
// 'inner' => [
// 'key' => '--1--',
// 'with' => [
// 'separator' => '--2--',
// ],
// ],
// ],
// ]