是否可以将PHP打印错误发送到特定的div?

时间:2014-10-05 04:30:16

标签: php html

我希望打印所有PHP错误,以便在我的页面上显示特定位置,即:

<div id="errors">
</div>

我见过自定义错误处理函数,但这些函数似乎并未涵盖所有错误类型。我甚至想不到用JavaScript做到这一点的方法,因为我在错误之间看到的唯一相似之处是它们主要包含在b标签中,如果可能的话我想避免使用正则表达式。

3 个答案:

答案 0 :(得分:1)

如果您创建了一个$errors数组,则可以将每个错误添加到该数组,然后在向用户显示时对其进行迭代。

例如:

$errors = []; // add conditional statements below this and if the error arises, add it to the array.

foreach($errors as $error) {
   echo $error['value'] . '<br />';
}

答案 1 :(得分:0)

建议有一个存储所有错误信息的数组和一个布尔变量(例如isDebugMode),它告诉我们是否应该打印错误。

然后使用for循环打印出所需div中的所有错误,并使用散布的html格式化输出。

答案 2 :(得分:0)

我过去在页面加载时将错误收集到数组中,然后在页面底部完成加载时,如果有错误,php脚本会将jQuery脚本写入div容器类似于:

<div id="errors"></div>
     <?php //if something goes wrong write error
          $_error['type'][] = 'error1'; ?>
<html stuff>
     <?php // something else goes wrong
          $_error['type'][] = 'error2'; ?>
<more html>
      <?php if(isset($_error)) { ?>
<script>
$('#errors').fadeIn('fast');
// This part you could loop if you had lots of types or come up with some
// elaborate javascript to populate your div
$('#errors').html('<?php echo implode("; ",$_error['type']); ?>');
</script>
    <?php } ?>