我有下面一类的书。目前,它具有一种通过ID从数据库中检索图书的方法。显然,可以添加其他方法来删除一本书,保存一本新书等。
class Book {
Public $id
public $name;
public $price;
public $isbn;
public function getBook($id) {
$sql = 'SELECT id, name, price, isbn FROM book WHERE id = ' . (int) $id;
$row = /* DB functions here to get a matching row */
$this->name = $row['name'];
$this->price = $row['price'];
$this->isbn = $row['isbn'];
return TRUE;
}
}
这是我的问题,而我从来没有能够深入了解这个问题。如何获得所有书籍或所有以字母“ A”开头的书籍的清单?
为了澄清,我知道如何查询数据库并遍历结果集。可以在上面的类中添加一个构造函数,以根据每个结果创建一个单独的书籍实例。但是我的“ searchBooks”方法应该去哪儿?它应该属于Book类吗?还是搜索方法应该属于一个完全不同的类(也许称为BookShop)的一部分?
我希望我已经正确解释了这一点。我看到了很多这样的示例,其中单个地处理对象,但是我无法理解应如何以及在何处创建对象列表或集合。
如何获得所有书籍或所有以字母“ A”开头的书籍的清单?
所有书籍: SELECT id, name, price, isbn FROM book
以A开头的所有书籍:
SELECT id, name, price, isbn FROM book WHERE name LIKE 'A%'
或者:
SELECT id, name, price, isbn FROM book WHERE SUBSTRING(name, 1, 1) = 'A'
至于方法的去向,请查找“存储库”-书不应该自己创建。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句