php - 设置在重复输入尝试唯一字段时导致 php 错误?

标签 php mysql unique-constraint error-reporting duplicates

在我们的 PHP 应用程序中,当前 mysql 查询错误(语法错误、唯一键的重复输入错误)不会引发 PHP 错误,并且脚本执行仍在继续,这很好。

我只是想知道在上述情况下什么设置(如果可以通过设置控制)可以停止脚本执行,以便我们清楚地了解并且不会在不知不觉中错误地执行此操作。

我刚刚读了这个问题MySQL - ignore insert error: duplicate entry ,这是为了避免在唯一字段上重复输入尝试时出现错误。 @zombat 的答案提到,当尝试重复数据输入时,使用 insert ...ignore 来引发警告而不是错误。因此,似乎重复输入尝试(使用 insert 而不是 insert ...ignore)会导致 PHP 错误并且脚本执行停止。这是默认行为吗?

我一开始就没有收到 PHP 错误。那么,我如何获得它们?

最佳答案

您应该显示一些代码。

但有几种可能性:

您可以在可能有问题的命令之前使用@来抑制错误。

您有允许脚本继续运行的自定义错误处理程序。

您使用异常而不是错误,并捕获它们。

阅读此处:http://php.net/manual/en/function.set-error-handler.php

我们确实需要一些代码和一些设置。您可以扫描项目中的字符串:set_error_handler

关于php - 设置在重复输入尝试唯一字段时导致 php 错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12834356/

相关文章:

mysql - 这个 mysql 查询有什么问题

mysql - 无法删除索引或重命名表 PHPmyadmin

sql - 如何从表列中删除唯一约束?

mysql - 如何在 MySQL 中为多列指定唯一约束?

php - 如何查看 mongo 中删除的记录?

php - 是否有更有效的方法来创建年/月列表?

php - php中的字符串到字节数组

php - 需要两个Select查询帮助

php - 转义 Twig 中的特殊字符

oracle - 在 alter table 中创建约束而不检查现有数据