我制作了几个类来组织从数据库中获取的数据。它们是这样的:
class.Product.php
class.WineProduct.php (extends Product)
class.ProductAward.php (included in Product, used as array item in Product->awards)
class.ProductReview.php (included in Product, used as array item in Product->reviews)
class.WineList.php (includes WineProduct, uses WineProduct as array item in WineList->items)
数据库有一个wines
表,其中包含所有相关数据;我遇到的麻烦是如何在类里面表示 Wine 类别类型。在数据库中,它存储为一个数值,该数值与名为 _product_types
的辅助表相关联(即,1 对应于 _product_types 上的
.存储类别的数字表示还是文本表示最好? (1 与“红酒”)。Red Wine
)
另一方面,在类之外使用 SQL 查询是否更好?
最佳答案
我会将数值映射为类常量,例如
class Product {
const RED_WINE = 1;
const WHITE_WINE = 2;
const BLUSH_WINE = 3;
public $product_type;
}
$item = new WineProduct;
$item->product_type = product::RED_WINE;
关于与数据库相关的 PHP 类代码组织,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4785213/