我有一个带有html表的php网站。用户能够修改每个包含的单元格(非常类似于Excel),例如,改变它的内容或字体大小。我目前的方法是将这些单元格保存为一对多关系:一个用于不同表的mysql表和一个带有单元格的mysql表。对于每个“表对象”,分配了几个“单元对象”。我现在遇到的问题是,这会产生很多db查询(保存或打开一个表时大约2200,每个单元一个)。我认为这真的太多了,不是吗(或者至少不是很好的练习方式)?
任何人都可以给我一个提示,我可以通过其他方式实现这个目标吗?或者这样就好了吗?
提前致谢,
katze_sonne
答案 0 :(得分:1)
您可能会将所有单元格数据收集到分为行的多维单元格数组中:
$table = array(
array(0, 1, 2, 3, 4, 5),
array(0, 1, 2, 3, 4, 5),
array(0, 1, 2, 3, 4, 5)
);
然后使用PHP serialize()
序列化整个数组,并将其保存在单个MySQL TEXT
字段中。
当您从数据库中读取时,您只需unserialize()
该字段,它就会恢复为正常的PHP数组,您可以循环并打印出该表。
答案 1 :(得分:0)
您可以考虑将数据序列化为以下格式之一,然后再将其发送到数据库进行存储
所有这些都是机器可读的纯文本格式。因此,您可以在重新执行后将它们转换回代码中的对象