uTools-Manuals/docs/php/error_reporting.html
2019-04-28 19:00:34 +08:00

161 lines
8.5 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>设置应该报告何种 PHP 错误</title>
</head>
<body class="docs"><div id="layout">
<div id="layout-content"><div id="function.error-reporting" class="refentry">
<div class="refnamediv">
<h1 class="refname">error_reporting</h1>
<p class="verinfo">(PHP 4, PHP 5, PHP 7)</p><p class="refpurpose"><span class="refname">error_reporting</span> &mdash; <span class="dc-title">设置应该报告何种 PHP 错误</span></p>
</div>
<div class="refsect1 description" id="refsect1-function.error-reporting-description">
<h3 class="title">说明</h3>
<div class="methodsynopsis dc-description">
<span class="methodname"><strong>error_reporting</strong></span>
([ <span class="methodparam"><span class="type">int</span> <code class="parameter">$level</code></span>
] ) : <span class="type">int</span></div>
<p class="para rdfs-comment">
<span class="function"><strong>error_reporting()</strong></span> 函数能够在运行时设置 <a href="errorfunc.configuration.html#ini.error-reporting" class="link">error_reporting</a> 指令。
PHP 有诸多错误级别,使用该函数可以设置在脚本运行时的级别。
如果没有设置可选参数 <code class="parameter">level</code>
<span class="function"><strong>error_reporting()</strong></span> 仅会返回当前的错误报告级别。
</p>
</div>
<div class="refsect1 parameters" id="refsect1-function.error-reporting-parameters">
<h3 class="title">参数</h3>
<p class="para">
<dl>
<dt>
<code class="parameter">level</code></dt>
<dd>
<p class="para">
新的 <a href="errorfunc.configuration.html#ini.error-reporting" class="link">error_reporting</a> 级别。
可以是一个位掩码也可以是一个已命名的常量。
强烈建议使用已命名的常量,以确保兼容将来的版本。
由于错误级别的添加、整数取值范围的增加,
较久的基于整数的错误级别不会总是和预期的表现一致。
</p>
<p class="para">
可用的错误级别常量及其实际含义描述在了
<a href="errorfunc.constants.html" class="link">predefined constants</a> 中。
</p>
</dd>
</dl>
</p>
</div>
<div class="refsect1 returnvalues" id="refsect1-function.error-reporting-returnvalues">
<h3 class="title">返回值</h3>
<p class="para">
返回旧的 <a href="errorfunc.configuration.html#ini.error-reporting" class="link">error_reporting</a> 级别,或者在 <code class="parameter">level</code> 参数未给出时返回当前的级别。
</p>
</div>
<div class="refsect1 changelog" id="refsect1-function.error-reporting-changelog">
<h3 class="title">更新日志</h3>
<p class="para">
<table class="doctable informaltable">
<thead>
<tr>
<th>版本</th>
<th>说明</th>
</tr>
</thead>
<tbody class="tbody">
<tr>
<td>5.4.0</td>
<td><strong><code>E_STRICT</code></strong> 成为 <strong><code>E_ALL</code></strong> 的一部分</td>
</tr>
<tr>
<td>5.3.0</td>
<td>引入 <strong><code>E_DEPRECATED</code></strong><strong><code>E_USER_DEPRECATED</code></strong></td>
</tr>
<tr>
<td>5.2.0</td>
<td>引入 <strong><code>E_RECOVERABLE_ERROR</code></strong></td>
</tr>
<tr>
<td>5.0.0</td>
<td>引入 <strong><code>E_STRICT</code></strong> (但不包括在 <strong><code>E_ALL</code></strong> 之内)。</td>
</tr>
</tbody>
</table>
</p>
</div>
<div class="refsect1 examples" id="refsect1-function.error-reporting-examples">
<h3 class="title">范例</h3>
<p class="para">
<div class="example" id="example-461">
<p><strong>Example #1 <span class="function"><strong>error_reporting()</strong></span> 范例</strong></p>
<div class="example-contents">
<div class="phpcode"><pre><span style="color: #000000">
<span style="color: #0000BB">&lt;?php<br /><br /></span><span style="color: #FF8000">//&nbsp;关闭所有PHP错误报告<br /></span><span style="color: #0000BB">error_reporting</span><span style="color: #007700">(</span><span style="color: #0000BB">0</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">//&nbsp;Report&nbsp;simple&nbsp;running&nbsp;errors<br /></span><span style="color: #0000BB">error_reporting</span><span style="color: #007700">(</span><span style="color: #0000BB">E_ERROR&nbsp;</span><span style="color: #007700">|&nbsp;</span><span style="color: #0000BB">E_WARNING&nbsp;</span><span style="color: #007700">|&nbsp;</span><span style="color: #0000BB">E_PARSE</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">//&nbsp;报告&nbsp;E_NOTICE也挺好&nbsp;(报告未初始化的变量<br />//&nbsp;或者捕获变量名的错误拼写)<br /></span><span style="color: #0000BB">error_reporting</span><span style="color: #007700">(</span><span style="color: #0000BB">E_ERROR&nbsp;</span><span style="color: #007700">|&nbsp;</span><span style="color: #0000BB">E_WARNING&nbsp;</span><span style="color: #007700">|&nbsp;</span><span style="color: #0000BB">E_PARSE&nbsp;</span><span style="color: #007700">|&nbsp;</span><span style="color: #0000BB">E_NOTICE</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">//&nbsp;除了&nbsp;E_NOTICE报告其他所有错误<br /></span><span style="color: #0000BB">error_reporting</span><span style="color: #007700">(</span><span style="color: #0000BB">E_ALL&nbsp;</span><span style="color: #007700">^&nbsp;</span><span style="color: #0000BB">E_NOTICE</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">//&nbsp;报告所有&nbsp;PHP&nbsp;错误&nbsp;(参见&nbsp;changelog)<br /></span><span style="color: #0000BB">error_reporting</span><span style="color: #007700">(</span><span style="color: #0000BB">E_ALL</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">//&nbsp;报告所有&nbsp;PHP&nbsp;错误<br /></span><span style="color: #0000BB">error_reporting</span><span style="color: #007700">(-</span><span style="color: #0000BB">1</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">//&nbsp;&nbsp;error_reporting(E_ALL);&nbsp;一样<br /></span><span style="color: #0000BB">ini_set</span><span style="color: #007700">(</span><span style="color: #DD0000">'error_reporting'</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">E_ALL</span><span style="color: #007700">);<br /><br /></span><span style="color: #0000BB">?&gt;</span>
</span>
</pre></div>
</div>
</div>
</p>
</div>
<div class="refsect1 notes" id="refsect1-function.error-reporting-notes">
<h3 class="title">注释</h3>
<div class="warning"><strong class="warning">Warning</strong>
<p class="simpara">
虽然 <a href="errorfunc.configuration.html#ini.error-reporting" class="link">error_reporting</a> 增强了
包含 <strong><code>E_STRICT</code></strong> 错误的能力(反之亦然),但大多数
<strong><code>E_STRICT</code></strong> 的错误是在编译时被评估的,
所以不会在文件中被报告。
</p>
</div>
<div class="tip"><strong class="tip">Tip</strong>
<p class="simpara">
传入 <em>-1</em> 的值将尽可能显示所有错误,
甚至包括将来 PHP 可能加入的新的错误级别和常量。
至 PHP 5.4,常量 <strong><code>E_ALL</code></strong> 有同样的行为。
</p>
</div>
</div>
<div class="refsect1 seealso" id="refsect1-function.error-reporting-seealso">
<h3 class="title">参见</h3>
<p class="para">
<ul class="simplelist">
<li class="member"><a href="errorfunc.configuration.html#ini.display-errors" class="link">display_errors</a> 指令</li>
<li class="member"><a href="errorfunc.configuration.html#ini.html-errors" class="link">html_errors</a> 指令</li>
<li class="member"><a href="errorfunc.configuration.html#ini.xmlrpc-errors" class="link">xmlrpc_errors</a> 指令</li>
<li class="member"><span class="function"><a href="ini_set.html" class="function" rel="rdfs-seeAlso">ini_set()</a> - 为一个配置选项设置值</span></li>
</ul>
</p>
</div>
</div></div></div></body></html>