Ok, the clear fact is that the stored data is stored wrong! To reconstruct this string into an array, you have to do more than just storing it in a right way.
So the solution could be the one from @sanderbee: Convert var_dump of array back to array variable
Or my suggested solution would be storing them in a right way.
The data is an array so this means multible data. Either you save it as an serialized string, so you just can unserialize it or I think the better solution would be a 1-N relation inside the database, like:
Table: Humans
Rows:
Table: Pets
So 1 (ONE) Human can have N (0 til infinity) Pets.
Table: Human
- 1, George Bush
- 2, Barack Obama
Table: Pets
- 1, 1, Dog
- 2, 1, Cat
- 3, 1, Delphin
- 4, 2, Putin
So while George Bush has 3 Pets: A dog, a cat and a delphin. Barack Obama just have a putin as a pet.
This way you can easily get all data with one SQL-Query using JOIN statement.
$db->query( 'SELECT Human.Name, Pets.race FROM Human JOIN Pets ON ( Human.id = Pets.Human_ID ) ' );
Looks much more effort than unserialize? But much cleaner and if you got many data, the database will be much faster than.. or it should be.. also it's more cleaner. Looks more professionell for me.
Edit
Your profile looks like your experience should be enough to know this already.. is it possible that you "HAVE TO" use this records in the database? If so, than the very first option from sanderbee is a "must do"..