我刚刚开始一个具有产品类的新项目。一个对象将代表一个产品。
每个产品都有任意数量的未定义属性(可能是颜色,可能是 foobar 等)。产品对象将包含任一属性对象的数组:
class attr {
var type; // string, float, int etc..
var name; // the name
var value; // the value
...
(and then the product object has an array of these attr objects..)
或者我应该为每个产品存储一个数组:
class product {
var attributes = array('colour' => 'red', 'weight' => '11')
...
显然,如果需要,我可以将数组设为 2d 并存储属性类型。
我主要担心的是产品可能有 20 个左右的属性,并且我正在创建的网站有很多用户,这可能会占用大量内存 - 这是正确的,还是只是一个神话?
我只是想知道是否有人知道这种事情的最佳实践是什么。对象方法感觉更正确,但对我来说有点浪费。有什么建议/想法吗?