今天在封装数据库判断的时候,出现了一个很头疼的错误:
我这样封装的函数,为什么会报错!!(环境版本PHP7.4 mysql8.0)
函数体里面的mysqli_error和mysqli_errno的参数处报错
报错内容是:Expected type ‘mysqli’. Found ‘false’.
function my_error($link, $sql)
{
//执行SQL语句
$query = mysqli_query($link, $sql);
//判断
if (!$query) {
echo 'SQL语法有错误!<br/>';
echo '错误编码是:' . mysqli_errno($query) . '<br/>';
//mysql获取到的错误信息默认是gbk编码
echo '错误信息是:' . iconv('GBK', 'UTF-8', mysqli_error($query)) . '<br/>';
exit;
}
}
到最后,向各路大佬请教,最后才发现,是参数传错了!!!
参数必须是一个$connection!!!
将参数更改之后 就可以了!