PHP函数中数据库连接的处理方法

PHP函数中数据库连接的处理方法,php,database,function,Php,Database,Function,我像这样准备mySQL连接 $connection = new mysqli('localhost', 'root', '', 'quiz') ; // sprawdz polaczenie if (mysqli_connect_error()) { echo "error is here". mysqli_connect_error(); } else echo "connected"; echo "<br>"; $query=('SELECT * from questio

我像这样准备mySQL连接

$connection = new mysqli('localhost', 'root', '', 'quiz')  ;

// sprawdz polaczenie
if (mysqli_connect_error()) {
echo "error is here". mysqli_connect_error();
}
else
echo "connected";

echo "<br>";

$query=('SELECT * from question') ;
$result=$connection->query($query);
mysqli->close($connection);
现在,如果我想在PHP函数中使用$connection,我将无法访问$connection

处理这一问题的最佳做法是什么?我无法在函数中反复准备下一个连接。不要关闭你的连接

删除此行:$mysqli->close$connection

二,。您可以使用全局


假设您在任何类或函数之外的全局范围内建立了$connection,则可以在具有$GLOBALS superglobal的函数中使用它

function foo() {
    ... some code ...
    $result = $GLOBALS['connection']->query('some query');
    ... some code ...
}

请参见此处的示例2:

不要关闭$connection。您可以将$connection作为参数传递给函数,例如此函数myFunction$conn{…},并像此函数myFunction$connection一样调用它。如果您只计划有一个连接,为什么不将其设为全局连接呢。然后,它将在所有功能中可用。
function foo() {
    ... some code ...
    $result = $GLOBALS['connection']->query('some query');
    ... some code ...
}