在 try-catch 中使用 continue 来防止抛出异常时脚本终止

Using continue in try-catch to prevent script termination when exception is thrown

我想将旧代码转换为使用异常,但它不应该在抛出异常时停止。那是旧代码:

function update()
{
 foreach ($this->instances as $id => $instance)
 {
  if ($instance->exists())
  {
   if (!$instance->save())
   {
        $this->setError($instance->getError());
        continue;
   }
   continue;
  }
}

如果我想使用 try catch 块,是否需要使用 continue 来避免脚本停止?那是带有 try-catch 的代码:

function update()
{
 foreach ($this->instances as $id => $instance)
 {
  if ($instance->exists())
  {
   try
   {
    $instance->save();
   }
   catch (exception $e)
   {
    echo $e->getMessage();
   }

  }
}

无需添加 continue 关键字。

如果try块中抛出异常,将执行catch块中的代码。之后剩下的代码就可以正常执行了。

阅读 section about exceptions in the language reference 了解详情。