一个mysqli连接,用于多个数据库功能

时间:2018-06-14 22:17:03

标签: php mysql database variables mysqli

我的主页调用许多数据库函数,存储在db.php文件中。在每个中,我使用

连接到MySQL数据库
$connect = mysqli_connect(SERVER_NAME,SERVER_USER,SERVER_PASS,SERVER_DB);

然后经过一些查询后,我用

关闭它
mysqli_close($connect);

到目前为止没问题。但我想知道有没有办法让代码更快,通过在主代码中执行连接一次,在所有数据库函数调用之上?然后关闭主代码底部的连接?

换句话说,如何访问函数外部的变量(此处为 $ connect ),而不必将其作为参数传递给某个函数?

我尝试将 $ connect 声明为全局静态,但这些都没有效果。

2 个答案:

答案 0 :(得分:0)

尝试在功能中设置连接,并在需要时调用它。

创建db.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);

答案 1 :(得分:0)

你可以做这样的事情

<?php

$conn=xxx;


function abc() {

global $conn->.....;
} 



$conn=null;

这不是最好的方法。你应该看一下单例模式的OOP实践。