9

I have set up a table that has only one field for a BLOB (Binary large object) but when I try to Insert it into the table it throws an error stating that it failed to convert the object to a string. This is my Query:

mysql_query("INSERT INTO objects (inquery) VALUES($inquery)");
nkcmr
  • 10,160
  • 25
  • 60
  • 81

2 Answers2

25

Serialize it:

$str = serialize($object);

If your object contains private/protected fields it's also a good idea to base64_encode() the serialized object as those properties will result in ascii-1 characters being used which would break when editing the column manually e.g. with phpMyAdmin..

To restore your object, you simply unserialize() the string (base64_decode() it before if necessary).

ThiefMaster
  • 298,938
  • 77
  • 579
  • 623
2

use json_encode to encode the object before you save it in Mysql then json_decode to decode the object

Mohamed Auf
  • 129
  • 1
  • 2