如何插入数据库PDO查询?
答案 0 :(得分:3)
如果Jcart对连接的pdo对象具有依赖性,那么最干净的事情就是将它传递给Jcart构造函数并将其保存到protected或private属性中。当你想要一些东西时,你会想办法得到你想要的东西。
class Jcart{
private $db;
public function __construct(PDO $db){
$this->db = $db;
}
public function getItems(){
$sql = "select * from items";
$res = $this->db->query($sql);
return $res->fetchAll();
}
}
样本用法是。 (假设$ db是连接的PDO对象)
$jc = new Jcart($db);
$items = $jc->getItems();
答案 1 :(得分:0)
理想情况下,使用构造函数将数据库类添加到作用域。构造函数是一个特殊的函数,当你开始上课时会立即触发。
class Jcart {
public $config = array();
private $items = array();
private $subtotal = 0;
private $itemCount = 0;
private $db;
public function __construct() {
$this->db = new PDO();
}
public function someMethod() {
// Your PDO class is now available on the '$this' scope
$prepare = $this->db->prepare(...);
}
}
要使用课外的值,您必须将其公开,例如您的配置值,然后从您可以访问它的类外部,就像任何属性一样。
$cart = new JCart();
$cart->config; // outputs $config property from JCart