PHP页面说, common.php 包含该行,以及其他一些PHP变量和代码。
$mysqli=new MySQLi("localhost", "username", "password");
所以在其他页面中,我简单地使用require_once("common.php")
包含此common.php,并使用$mysqli
变量进行所有与数据库相关的操作。一切正常。在随机情况下,我需要在PHP页面中创建一个函数,例如
function checking($some_data)
{
// Using $mysqli check $some_data with database here and return 0 or 1 based on database operations
// Here it says $mysqli is not defined.
}
$somevariable=$mysqli->prepare($query); // This is outside the function and works fine
$result=checking($some_data); // This does not work and says $mysqli not defined.
我尝试在函数中添加global $mysqli
。但是,如果我这样做,MySQLi连接不可用。使用连接参数在每个函数内定义$mysqli
,听起来很疯狂。什么可能是简单的解决方案?
答案 0 :(得分:0)
在这种情况下,在函数内添加global $mysqli
会很有效。如果它不起作用,你在函数或查询中可能会出错(可能是)。
function function_name_here($arguement_variable_here)
{
global $mysqli;
$mysqli->query($query);
}
并确保在函数定义之前包含依赖项文件 - common.php 。如果include / require在函数定义下面完成,可能在某些情况下可能不起作用。