我的主页调用了许多存储在db.php文件中的数据库函数。在它们中的每一个中,我都使用
$connect = mysqli_connect(SERVER_NAME,SERVER_USER,SERVER_PASS,SERVER_DB);
然后经过一些查询,我正在关闭它
mysqli_close($connect);
到目前为止没有问题。但是我想知道有没有办法使代码更快,只需在所有数据库函数调用的顶部在主代码中执行一次连接?然后关闭主代码底部的连接?
换句话说,如何访问函数外部的变量(此处$connect(,而不必将其作为参数传递给该特定函数?
我尝试将$connect声明为全局或静态,但它们都不起作用。
尝试在函数中设置连接并在需要时调用它。
创建数据库.php;
function connect(){
$conn = @mysqli_connect(SERVER_NAME,SERVER_USER,SERVER_PASS);
mysqli_select_db($conn, SERVER_DB);
return $conn;
}
function close_connect($conn){
mysqli_close($conn);
}
用:
require_once "db.php";
$conn = connect();
// excute query
close_connect($conn);
你可以做这样的事情
<?php
$conn=xxx;
function abc() {
global $conn->.....;
}
$conn=null;
这不是最好的方法。您应该查看具有单例模式的 OOP 实践。