11

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,690
  • 25
  • 63
  • 84

2 Answers2

28

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
  • 310,957
  • 84
  • 592
  • 636
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