0

你会建议我在以下几点之间明智地使用性能

一个)

function db(){ return new mysqli('localhost','user','pass','db'); }

//global scope
$db = db();

function foo(){
//function scope
$db = db();

[...]

}

二)

//global scope
$db = new mysqli('localhost','user','pass','db');

function bar(){
//function scope
global $db

[...]

}

目前我正在使用方法 A,但我知道调用函数会产生开销,并且在大多数函数中都会调用 db(),所以我想知道。

4

1 回答 1

0

如果你想在几个地方访问你的数据库,也许你应该使用一个对象:

class db_manager {
    private $db = new mysqli('localhost','user','pass','db');

    public function getDb() {
        return $this->db;
    }
}

并这样称呼它:

$db = (new db_manager)->getDb();
于 2012-09-20T09:48:58.377 回答