哎,
我定义了(在config.php中):
$mysql = mysqli_connect (..);
用于连接mySQL数据库。 现在我想在我的函数中使用变量(functions.php):
function x () { $fetch = ($mysql, "SELECT ...")); }
不使用global:
function x () { global $mysql ... }
任何干净的想法(程序性的)?
答案 0 :(得分:1)
你可以,例如将连接资源传递给您的函数
function x ($mysqli) { $mysqli->... }
答案 1 :(得分:1)
您可以使用Superglobal $ GLOBALS访问全局范围内的变量而不使用global-keyword:
function x() { $GLOBALS['mysql']->... }
Doc:http://php.net/manual/en/reserved.variables.globals.php
我建议创建一个单独的函数,它返回可以使用的Database-Handle / Object而不是变量。 e.g:
function db() { return $GLOBALS['mysql']; }
function x() { db()->... }