取消mysqli报错通常意味着要禁用错误报告或捕获并处理这些错误。以下是一些常见的方法:
在PHP脚本中,可以通过修改php.ini
文件或在脚本中动态设置来禁用错误报告。
php.ini
文件在php.ini
文件中找到以下行并修改:
display_errors = Off
error_reporting = E_ALL & ~E_NOTICE & ~E_DEPRECATED
在PHP脚本的开头添加以下代码:
ini_set('display_errors', 'Off');
error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED);
可以使用try-catch
块来捕获并处理mysqli错误。
<?php
$mysqli = new mysqli("localhost", "username", "password", "database");
if ($mysqli->connect_errno) {
echo "Failed to connect to MySQL: " . $mysqli->connect_error;
exit();
}
try {
// 执行SQL查询
if ($result = $mysqli->query("SELECT * FROM table_name")) {
// 处理查询结果
while ($row = $result->fetch_assoc()) {
// 处理每一行数据
}
$result->free();
} else {
throw new Exception("Query failed: " . $mysqli->error);
}
} catch (Exception $e) {
echo "Error: " . $e->getMessage();
}
$mysqli->close();
?>
mysqli提供了一些函数来获取和处理错误信息。
<?php
$mysqli = new mysqli("localhost", "username", "password", "database");
if ($mysqli->connect_errno) {
echo "Failed to connect to MySQL: " . $mysqli->connect_error;
exit();
}
if (!$mysqli->query("SELECT * FROM table_name")) {
echo "Query failed: " . $mysqli->error;
}
$mysqli->close();
?>
PDO(PHP Data Objects)提供了更好的错误处理机制。
<?php
try {
$pdo = new PDO("mysql:host=localhost;dbname=database", "username", "password");
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $pdo->query("SELECT * FROM table_name");
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
// 处理每一行数据
}
} catch (PDOException $e) {
echo "Error: " . $e->getMessage();
}
$pdo = null;
?>
php.ini
文件或在脚本中动态设置来禁用错误报告。try-catch
块来捕获并处理mysqli错误。选择哪种方法取决于你的具体需求和应用场景。通常情况下,捕获并处理错误是最推荐的方法,因为它可以让你更好地控制错误处理流程。
领取专属 10元无门槛券
手把手带您无忧上云