我需要存储:
array(1,2,3,4,5);
进入mysql blob。
如何将此数组转换为二进制数据?
答案 0 :(得分:2)
这主要取决于您如何使用这些信息。 ID通常用于标识资源,因此必须是唯一的,而不是null和可索引的。
这些标准不要用作blob。
主要是因为内容搜索比原始变量慢。此外,SQL数据库对表的内容进行排序以确保更快的查询。
如果你需要的只是存储信息然后使用另一个ID来识别这个资源(并且它们可以很容易地解析为字符串/数字,那么就不要使用blob)。二进制文件通常每个字符使用8个字节。使用较少的总内存,数字可以包含相同的信息。例如,1902334123(随机键盘粉碎)在硬盘中使用10 * 8 = 80字节,而32位有符号整数可以保存它。
最后,如果您需要的只是存储多个数据单元,那么将序列varchar作为字符串读取的问题是什么,因为它可以解决您的问题
答案 1 :(得分:0)
您可以转换为JSON并存储到db:
json_encode($array);
当你从db返回时:
json_decode($array);