我想知道PHP / MySQL开发的最佳实践是什么。
例如,我有以下内容:
在connect.php中,它使用require_once('classes/database.php')
并使用$database = new database();
然后调用$database->connect();
我是否需要将这些内容称为header.php和footer.php并且具有整体连接(每个主要网页都包含这些内容),或者在需要时打开并关闭它们。例如,我有一个functions.php文件,其中包含我应该执行的功能:
public function test() {
$db = new database();
// db setup here
$db->connect();
// do stuff here
$db->disconnect();
}
或
public function test() {
// stuff here
}
谢谢!
答案 0 :(得分:3)
连接到数据库通常是一个相当昂贵的过程 - 耗时。如果可能的话,尽量避免多次连接以响应单个请求。
答案 1 :(得分:0)
打开与数据库的连接通常需要一些时间,因此我建议在脚本开头一劳永逸地打开它。
最好知道在脚本结束时,PHP会自动关闭打开的连接,因此通常不需要显式关闭与数据库的连接。
为了拥有更强大的代码,我会做这样的事情:
class Database {
var $connection = null;
public function connect() {
if($this->connection == null) {
// setup the connection here
}
}
}
这样,每次需要数据库连接时,都可以调用$db->connect()
,但工作实际上只在第一次调用时完成。这将确保即使在代码重构之后,比如在头文件中,数据库也会在需要时连接。