【发布时间】:2011-06-20 00:04:42
【问题描述】:
我正在开发一个网站,用户可以在其中将项目列表(数组)保存在他们的个人资料中(他们也可以在同一网站上找到并拥有自己的 ID)。
这是我迄今为止在类似情况下使用的方式: - 在数据库的用户表中创建一个“文本”(字符串)字段并保存以逗号分隔的项目 - 要读取该字段,请使用 explode 方法在 CakePHP 中获取数组,然后使用它 - 要将数组保存到数据库,请使用 implode 方法将其转换为字符串并能够将其存储在字段中
我不喜欢这种方法的地方在于,处理这些列表(添加项目、删除项目...)可能会变得非常复杂,而且您不能真正直接访问这些项目,总有一些预处理或进行后处理。
例如,为了更轻松地查看一个用户列表中的特定项目,并在他们的列表中找到具有相同项目的其他用户。
在 CakePHP+MySQL 中有没有更好的处理数组的方法?我读过serialize()/unserialize(),但我认为与其他方法相比不会有太大的不同...
非常感谢您的任何想法!
【问题讨论】: