怎么在class里使用pdo?

WBOY
リリース: 2016-06-06 20:24:22
オリジナル
1385 人が閲覧しました

请问要怎么在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>
ログイン後にコピー
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート