>  기사  >  백엔드 개발  >  怎么在class里使用pdo?

怎么在class里使用pdo?

WBOY
WBOY원래의
2016-06-06 20:24:221385검색

请问要怎么在class中使用pdo?

'''
$pdo = new PDO();

class a{
function a(){

<code>$pdo->query();</code>

}
function b(){

<code>$pdo->exec();
}</code>

}
'''

就是这样,在a类里的a与b方法中使用呢?

回复内容:

请问要怎么在class中使用pdo?

'''
$pdo = new PDO();

class a{
function a(){

<code>$pdo->query();</code>

}
function b(){

<code>$pdo->exec();
}</code>

}
'''

就是这样,在a类里的a与b方法中使用呢?

题主, 你要把pdo对象通过构造函数注入到类a中.(为什么不在构造函数里面直接实例化,这些是设计模式的概念,如果题主感兴趣可以google下“控制反转”)

class A{

<code>
protected $pdo;

public function __construct(PDO $pdo){
    $this->pdo = $pdo;
}

public function a1(){
    $this->pdo->query();
}

public function b(){
    $this->pdo->exec();
}</code>

}

$pdo = new PDO();
$aInstance = new A($pdo);

另外上面两位的答案都不是编程最佳实践,不推荐使用。

class a{
$pdo = '';
function __construct(){
$this->pdo = new PDO();
}
function a(){
$this->pdo->query();
}
function b(){

$this->pdo->exec();
}
}

用了外部的变量可以用global

<code>$pdo = new PDO();
class a{
    function a(){
        global $pdo;
        $pdo->query();
    }
}</code>
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.