我在function.php
中有一个函数,它在文件内调用时输出正常,但是如果我在另一个文件中包含function.php
并调用该函数,则会出现错误。
这是我的函数.php
$mysqli = new mysqli('localhost','dbuser','dbpassword','dbname');
if( $mysqli->connect_error ) {
die('Connect Error (' . $mysqli->connect_errno . ') '
. $mysqli->connect_error);
mysqli_set_charset($mysqli,"utf8");
}
$date=$mysqli->real_escape_string($_GET["date"]);
if(!empty($date)) {
$date = $mysqli->real_escape_string($_GET['date']);
} else {
$date = date("Y-m-d", strtotime('today'));
}
function functionname() {
global $mysqli, $date;
$sql=mysqli_query($mysqli,"SELECT * FROM database WHERE DateLT= '".$date."'");
if(mysqli_num_rows($sql) > 0) {
echo "somedata";
while($row = mysqli_fetch_array($sql))
{
echo "somedata";
}
} else {
}
}
functionname()
$mysqli->close();
/*-->*/
输出正常。但是如果我从示例中调用函数.php就像这样,
<?php define('ROOT', $_SERVER['DOCUMENT_ROOT']);
include(ROOT."/function/function.php");
functionname();?>
我得到 mysqli 错误。
问题是你这样做
$mysqli->close();
在function.php
结束时.关闭连接后,无法使用连接。
把那条线拿出来。