What kind of string is this? How do I unserialize this string? [duplicate]
What kind of string is this? How can I unserialize it and get the array out of it?
a:2:{i:0;s:7:"Abogado";i:1;s:7:"Notario";}
Solution 1:
This is a serialized string. You can unserialize it with this function: unserialize()
, like this:
$str = 'a:2:{i:0;s:7:"Abogado";i:1;s:7:"Notario";}';
print_r(unserialize($str));
Output:
Array ( [0] => Abogado [1] => Notario )
Side Note:
A quote from the manual:
Warning: FALSE is returned both in the case of an error and if unserializing the serialized FALSE value. It is possible to catch this special case by comparing str with serialize(false) or by catching the issued E_NOTICE.
Warning: Do not pass untrusted user input to unserialize(). Unserialization can result in code being loaded and executed due to object instantiation and autoloading, and a malicious user may be able to exploit this. Use a safe, standard data interchange format such as JSON (via json_decode() and json_encode()) if you need to pass serialized data to the user.