我有一个代码循环的循环,并且在每个循环中它连接到不同的服务器然后进行MySQL查询。但是,有时其中一个循环/查询无法到达结尾并且所有代码都会中断。有没有办法,如果循环给出错误然后跳过进程/移动到下一个循环?
答案 0 :(得分:2)
答案 1 :(得分:1)
在该循环内部,检查连接,如果已建立连接,请执行逻辑。因此,如果没有建立连接,将跳过逻辑部分。
答案 2 :(得分:1)
使用“继续”跳到循环中的下一个项目:
答案 3 :(得分:1)
这取决于你是否使用php的内置 mysql , mysqli 或某些第三方库。但作为一般规则,我会推荐以下逻辑。
根据您在相关表格中所做的工作,您还可以使用 @ 前缀(例如 @mysql_query )来抑制查询中的任何错误,然后检查数量受影响的行。如果你做了一个选择,你可以检查你的结果集,看看你有什么回来等等。我不喜欢使用 @ 但是应该注意从现有表中选择一个是空的,类似的情况可能导致奇怪的行为取决于您的代码。 Try / Catch 是处理错误控制流程的更好方法。但实际上抛出一个异常相比之下是一个相当缓慢的过程,因为所有的工作都围绕着连接到数据库,所以如果这个循环可以抛出很多异常,那么减速它可能不是一个好主意。 。此外,当使用它来跳过循环中的一个步骤时,某些人可能很难遵循逻辑。因此,像 @ 这样的东西可以接受;)