我有一本书的下面的课程。目前,它有一种方法可以通过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的类?
我希望我已经正确解释了这一点。我看到很多例子,其中对象是以单数形式处理的,但我无法理解应该如何以及在何处创建对象列表或集合。
答案 0 :(得分:-1)
如何获取所有图书或所有以图书开头的图书的列表 字母“A”?
所有图书:SELECT id, name, price, isbn FROM book
所有以A:
开头的书籍 SELECT id, name, price, isbn FROM book WHERE name LIKE 'A%'
OR:
SELECT id, name, price, isbn FROM book WHERE SUBSTRING(name, 1, 1) = 'A'
至于方法的去向,查找“存储库” - 一本书不应该自己创建。