0

我有以下脚本

<?php
      echo "I am alive<br>";
      die("I am dying<br>");
      echo ("Dead");

?>

我得到的输出是

I am alive
I am dying

是否有任何方法(替代/替代die())可以继续执行剩余的脚本?

编辑

对不起,我得到了我想要的,并投票结束了这个问题。请忽略这个问题。

4

3 回答 3

6

如果您的问题背后的动机在于错误处理,您可能想看看 PHP 中的 try/catch 结构。

http://php.net/manual/en/language.exceptions.php

于 2010-05-24T13:11:25.960 回答
3

您可以使用trigger_error

<?php
  echo "I am alive<br>";
  trigger_error("I am dying<br>");
  echo ("Dead");
?>

输出:

I am alive
Notice: I am dying in ... on line 3
Dead 
于 2010-05-24T13:10:58.240 回答
0

如果您想在结果返回给用户后运行脚本,请尝试以下操作:

    while (ob_get_level () != 0) {
        ob_end_clean ();
    }

    header ("Connection: close\r\n");
    header ("Content-Encoding: none\r\n");
    ignore_user_abort (true);
    ob_start ();

    // do stuff that should be returned here

    header ("Content-Length: ".ob_get_length ());
    ob_end_flush ();
    flush ();

    // do rest here
于 2010-05-24T13:09:48.297 回答