什么是在面向对象的PHP中实现多对多关系的最佳方式。
如果我有三个表格,书籍和类别以及连接表bookscategories(处理多对多),我应该创建一个名为bookcategories的模型/类,并处理与那里的书籍类别关系的所有事情吗?
我参考下面的伪代码的具体问题是:
非常感谢任何建议!提前谢谢!
伪代码:
<?php
class Books {
//handles all book table stuff
public function delete_book() {
//deletes specific book
//deletes all related bookcategories using find_by_book_id
}
}
class Categories {
// handles all category stuff
}
class BookCategories {
public static function get_cats_by_book_id {
// sql join statement to retrieve category objects by book id
}
public static function get_books_by_cat_id {
}
public static function find_by_book_id() {
//returns bookcategories by book id.
}
}
?>
答案 0 :(得分:1)
您可能会发现调查设计模式很有帮助。在这种情况下经常使用复合图案。 Matt Zandstra是一本帮助你使用php oo设计模式的好书 PHP Objects, Patterns and Practice