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

133 lines
6.9 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>设置/获取 字符编码的检测顺序</title>
</head>
<body class="docs"><div id="layout">
<div id="layout-content"><div id="function.mb-detect-order" class="refentry">
<div class="refnamediv">
<h1 class="refname">mb_detect_order</h1>
<p class="verinfo">(PHP 4 &gt;= 4.0.6, PHP 5, PHP 7)</p><p class="refpurpose"><span class="refname">mb_detect_order</span> &mdash; <span class="dc-title">设置/获取 字符编码的检测顺序</span></p>
</div>
<div class="refsect1 description" id="refsect1-function.mb-detect-order-description">
<h3 class="title">说明</h3>
<div class="methodsynopsis dc-description">
<span class="methodname"><strong>mb_detect_order</strong></span>
([ <span class="methodparam"><span class="type"><a href="language.pseudo-types.html#language.types.mixed" class="type mixed">mixed</a></span> <code class="parameter">$encoding_list</code><span class="initializer"> = mb_detect_order()</span></span>
] ) : <span class="type"><a href="language.pseudo-types.html#language.types.mixed" class="type mixed">mixed</a></span></div>
<p class="para rdfs-comment">
为编码列表 <code class="parameter">encoding_list</code> 设置自动检测字符编码的顺序。
</p>
</div>
<div class="refsect1 parameters" id="refsect1-function.mb-detect-order-parameters">
<h3 class="title">参数</h3>
<p class="para">
<dl>
<dt>
<code class="parameter">encoding_list</code></dt>
<dd>
<p class="para">
<code class="parameter">encoding_list</code> 是一个 <span class="type"><a href="language.types.array.html" class="type array">array</a></span> 或者逗号分隔的字符编码列表。
参见<a href="mbstring.supported_encodings.html" class="link">支持的编码</a>
</p>
<p class="para">
如果省略了 <code class="parameter">encoding_list</code> 参数,它将返回当前字符编码检测顺序的数组。
</p>
<p class="para">
该设置会影响 <span class="function"><a href="mb_detect_encoding.html" class="function">mb_detect_encoding()</a></span><span class="function"><a href="mb_send_mail.html" class="function">mb_send_mail()</a></span>
</p>
<p class="para">
<em>mbstring</em> 当前实现了以下编码检测筛选器。
如有以下编码列表的无效字节序列,编码的检测将会失败。
</p>
<span class="simpara">
<em>UTF-8</em>, <em>UTF-7</em>,
<em>ASCII</em>,
<em>EUC-JP</em>,<em>SJIS</em>,
<em>eucJP-win</em>, <em>SJIS-win</em>,
<em>JIS</em>, <em>ISO-2022-JP</em>
</span>
<p class="para">
对于 <em>ISO-8859-*</em><em>mbstring</em>
总是检测为 <em>ISO-8859-*</em>
</p>
<p class="para">
对于 <em>UTF-16</em><em>UTF-32</em>
<em>UCS2</em><em>UCS4</em>,编码检测总是会失败。
</p>
</dd>
</dl>
</p>
</div>
<div class="refsect1 returnvalues" id="refsect1-function.mb-detect-order-returnvalues">
<h3 class="title">返回值</h3>
<p class="para">
设置编码检测顺序时候,成功时返回 <strong><code>TRUE</code></strong>,识别时候返回 <strong><code>FALSE</code></strong>
</p>
<p class="para">
在获取编码检测顺序的时候,会返回排序过的编码数组。
</p>
</div>
<div class="refsect1 examples" id="refsect1-function.mb-detect-order-examples">
<h3 class="title">范例</h3>
<p class="para">
<div class="example" id="example-3180">
<p><strong>Example #1 <span class="function"><strong>mb_detect_order()</strong></span> 例子</strong></p>
<div class="example-contents">
<div class="phpcode"><pre><span style="color: #000000">
<span style="color: #0000BB">&lt;?php<br /></span><span style="color: #FF8000">/*&nbsp;为检测顺序设置枚举列表&nbsp;*/<br /></span><span style="color: #0000BB">mb_detect_order</span><span style="color: #007700">(</span><span style="color: #DD0000">"eucjp-win,sjis-win,UTF-8"</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/*&nbsp;通过数组设置检测顺序&nbsp;*/<br /></span><span style="color: #0000BB">$ary</span><span style="color: #007700">[]&nbsp;=&nbsp;</span><span style="color: #DD0000">"ASCII"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$ary</span><span style="color: #007700">[]&nbsp;=&nbsp;</span><span style="color: #DD0000">"JIS"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$ary</span><span style="color: #007700">[]&nbsp;=&nbsp;</span><span style="color: #DD0000">"EUC-JP"</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">mb_detect_order</span><span style="color: #007700">(</span><span style="color: #0000BB">$ary</span><span style="color: #007700">);<br /><br /></span><span style="color: #FF8000">/*&nbsp;显示当前的检测顺序&nbsp;*/<br /></span><span style="color: #007700">echo&nbsp;</span><span style="color: #0000BB">implode</span><span style="color: #007700">(</span><span style="color: #DD0000">",&nbsp;"</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">mb_detect_order</span><span style="color: #007700">());<br /></span><span style="color: #0000BB">?&gt;</span>
</span>
</pre></div>
</div>
</div>
</p>
<p class="para">
<div class="example" id="example-3181">
<p><strong>Example #2 案例展示了无效的检测顺序</strong></p>
<div class="example-contents">
<div class="cdata"><pre>
; 总是检测为 ISO-8859-1
detect_order = ISO-8859-1, UTF-8
; 总是检测为 UTF-8由于 ASCII/UTF-7 的值对 UTF-8 是有效的
detect_order = UTF-8, ASCII, UTF-7
</pre></div>
</div>
</div>
</p>
</div>
<div class="refsect1 seealso" id="refsect1-function.mb-detect-order-seealso">
<h3 class="title">参见</h3>
<p class="para">
<ul class="simplelist">
<li class="member"><span class="function"><a href="mb_internal_encoding.html" class="function" rel="rdfs-seeAlso">mb_internal_encoding()</a> - 设置/获取内部字符编码</span></li>
<li class="member"><span class="function"><a href="mb_http_input.html" class="function" rel="rdfs-seeAlso">mb_http_input()</a> - 检测 HTTP 输入字符编码</span></li>
<li class="member"><span class="function"><a href="mb_http_output.html" class="function" rel="rdfs-seeAlso">mb_http_output()</a> - 设置/获取 HTTP 输出字符编码</span></li>
<li class="member"><span class="function"><a href="mb_send_mail.html" class="function" rel="rdfs-seeAlso">mb_send_mail()</a> - 发送编码过的邮件</span></li>
</ul>
</p>
</div>
</div></div></div></body></html>