# php_manual

id: hash
type: function
doc:
<comment>Description:</comment>
  生成散列值（消息摘要）

<comment>Param:</comment>
  <info>string</info>  <strong>$algo</strong>     要使用的散列算法，例如：“md5”、“sha256”、“haval160,4”等。在 <strong>hash_algos()</strong> 中查看
                    支持的算法。
  <info>string</info>  <strong>$data</strong>     要进行散列运算的消息。
  <info>bool</info>    <strong>$binary</strong>   设置为 <info>true</info> 输出原始二进制数据， 设置为 <info>false</info> 输出小写 16 进制字符串。
  <info>array</info>   <strong>$options</strong>  各种散列算法的一系列选项数组。目前 MurmurHash 算法仅支持 “seed” 参数。

<comment>Return:</comment>
  <info>string</info>  如果 <strong>$binary</strong> 设置为 <info>true</info>， 则返回原始二进制数据表示的信息摘要， 否则返回 16 进制小写字符串
          格式表示的信息摘要。

<comment>See Also:</comment>
   * <strong>hash_file()</strong>
   * <strong>hash_hmac()</strong>
   * <strong>hash_init()</strong>
   * <strong>md5()</strong>
   * <strong>sha1()</strong>


id: hash_algos
type: function
doc:
<comment>Description:</comment>
  返回已注册的散列算法列表

<comment>Return:</comment>
  <info>array</info>  返回一个数值索引的数组， 包含了受支持的散列算法名称。

<comment>See Also:</comment>
   * <strong>hash_hmac_algos()</strong>


id: hash_copy
type: function
doc:
<comment>Description:</comment>
  拷贝哈希运算上下文

<comment>Param:</comment>
  <info>HashContext</info>  <strong>$context</strong>  由 <strong>hash_init()</strong> 函数返回的哈希运算上下文。

<comment>Return:</comment>
  <info>HashContext</info>  返回哈希运算上下文的一个复本。


id: hash_equals
type: function
doc:
<comment>Description:</comment>
  可防止时序攻击的字符串比较
  
  检查两个字符串是否相等，而不会通过执行时泄露有关 <strong>$known_string</strong> 内容的任何信息。
  
  此函数可用于缓解计时攻击。使用 === 进行常规比较所需的时间的长短取决于两个值是否不同以及可以找到第
  一个不同的位置，从而泄露有关 <strong>$known_string</strong> 内容的秘密信息。
  
  非常重要的一点是，用户提供的字符串必须是第二个参数。

<comment>Param:</comment>
  <info>string</info>  <strong>$known_string</strong>  必须保密的已知 <info>string</info>。
  <info>string</info>  <strong>$user_string</strong>   与已知字符串进行比较的用户提供的 <info>string</info>。

<comment>Return:</comment>
  <info>bool</info>  当两个字符串相等时返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>hash_hmac()</strong>


id: hash_file
type: function
doc:
<comment>Description:</comment>
  给指定文件的内容生成散列值

<comment>Param:</comment>
  <info>string</info>  <strong>$algo</strong>      要使用的散列算法的名称（例如：“md5”、“sha256”、“haval160,4”等）。 可以在
                     <strong>hash_algos()</strong> 中查看当前支持的算法。
  <info>string</info>  <strong>$filename</strong>  要进行散列运算的文件位置的 URL；支持 fopen 封装协议。
  <info>bool</info>    <strong>$binary</strong>    设置为 <info>true</info> 时，输出原始二进制数据。 设置为 <info>false</info> 时，输出小写的十六进制字符
                     串。
  <info>array</info>   <strong>$options</strong>   各种散列算法的一系列选项数组。目前 MurmurHash 算法仅支持 “seed” 参数。

<comment>Return:</comment>
  <info>string|false</info>  如果 <strong>$binary</strong> 设置为 true， 则返回原始二进制数据表示的信息摘要， 否则返回十六进制小写
                字符串格式表示的信息摘要。

<comment>See Also:</comment>
   * <strong>hash()</strong>
   * <strong>hash_hmac_file()</strong>
   * <strong>hash_update_file()</strong>
   * <strong>md5_file()</strong>
   * <strong>sha1_file()</strong>


id: hash_final
type: function
doc:
<comment>Description:</comment>
  结束增量散列且返回摘要结果

<comment>Param:</comment>
  <info>HashContext</info>  <strong>$context</strong>  <strong>hash_init()</strong> 返回的散列上下文资源。
  <info>bool</info>         <strong>$binary</strong>   设置为 <info>true</info>，输出格式为原始的二进制数据。 设置为 <info>false</info>，输出小写的 16 进制
                         字符串。

<comment>Return:</comment>
  <info>string</info>  如果 <strong>$binary</strong> 设置为 <info>true</info>， 则返回原始二进制数据表示的信息摘要， 否则返回 16 进制小写字符串
          格式表示的信息摘要。

<comment>See Also:</comment>
   * <strong>hash_init()</strong>
   * <strong>hash_update()</strong>
   * <strong>hash_update_stream()</strong>
   * <strong>hash_update_file()</strong>


id: hash_hkdf
type: function
doc:
<comment>Description:</comment>
  Generate a HKDF key derivation of a supplied key input

<comment>Param:</comment>
  <info>string</info>  <strong>$algo</strong>    Name of selected hashing algorithm (i.e. "sha256", "sha512", "haval160,4", etc..)
                   See <strong>hash_algos()</strong> for a list of supported algorithms.  Non-cryptographic hash
                   functions are not allowed.
                   
                   Non-cryptographic hash functions are not allowed.
  <info>string</info>  <strong>$key</strong>     Input keying material (raw binary). Cannot be empty.
  <info>int</info>     <strong>$length</strong>  Desired output length in bytes. Cannot be greater than 255 times the chosen hash
                   function size.
                   
                   If <strong>$length</strong> is <return>0</return>, the output length will default to the chosen hash function size.
  <info>string</info>  <strong>$info</strong>    Application/context-specific info string.
  <info>string</info>  <strong>$salt</strong>    Salt to use during derivation.
                   
                   While optional, adding random salt significantly improves the strength of HKDF.

<comment>Return:</comment>
  <info>string</info>  Returns a string containing a raw binary representation of the derived key (also known as
          output keying material - OKM).

<comment>See Also:</comment>
   * <strong>hash_pbkdf2()</strong>
   * RFC 5869
   * userland implementation


id: hash_hmac
type: function
doc:
<comment>Description:</comment>
  使用 HMAC 方法生成带有密钥的散列值

<comment>Param:</comment>
  <info>string</info>  <strong>$algo</strong>    要使用的散列算法名称，例如：“md5”、“sha256”、“haval160,4”等。如何获取受支持的算法
                   清单，请参见 <strong>hash_hmac_algos()</strong> 函数。
  <info>string</info>  <strong>$data</strong>    要进行散列运算的消息。
  <info>string</info>  <strong>$key</strong>     使用 HMAC 生成信息摘要时所使用的密钥。
  <info>bool</info>    <strong>$binary</strong>  设置为 <info>true</info> 输出原始二进制数据，设置为 <info>false</info> 输出小写 16 进制字符串。

<comment>Return:</comment>
  <info>string</info>  如果 <strong>$binary</strong> 设置为 <info>true</info>，则返回原始二进制数据表示的信息摘要，否则返回 16 进制小写字符串格
          式表示的信息摘要。

<comment>See Also:</comment>
   * <strong>hash()</strong>
   * <strong>hash_hmac_algos()</strong>
   * <strong>hash_init()</strong>
   * <strong>hash_hmac_file()</strong>
   * <strong>hash_equals()</strong>


id: hash_hmac_algos
type: function
doc:
<comment>Description:</comment>
  返回适用于 hash_hmac 的已注册散列算法列表

<comment>Return:</comment>
  <info>array</info>  返回数字索引数组，包含适用于 <strong>hash_hmac()</strong> 支持的散列算法列表。

<comment>See Also:</comment>
   * <strong>hash_hmac()</strong>
   * <strong>hash_algos()</strong>


id: hash_hmac_file
type: function
doc:
<comment>Description:</comment>
  使用 HMAC 方法和给定文件的内容生成带密钥的散列值

<comment>Param:</comment>
  <info>string</info>  <strong>$algo</strong>      要使用的散列算法名称，例如："md5"，"sha256"，"haval160,4" 等。 如何获取受支持的
                     算法清单，请参见 <strong>hash_hmac_algos()</strong> 函数。
  <info>string</info>  <strong>$filename</strong>  要进行散列运算的文件路径，支持 fopen 封装器。
  <info>string</info>  <strong>$key</strong>       使用 HMAC 生成信息摘要时所使用的密钥。
  <info>bool</info>    <strong>$binary</strong>    设置为 <info>true</info> 输出原始二进制数据， 设置为 <info>false</info> 输出小写 16 进制字符串。

<comment>Return:</comment>
  <info>string|false</info>  如果 <strong>$binary</strong> 设置为 <info>true</info>， 则返回原始二进制数据表示的信息摘要，否则返回 16 进制小写
                字符串格式表示的信息摘要。如果无法读取文件  <strong>$filename</strong>，则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>hash_hmac_algos()</strong>
   * <strong>hash_hmac()</strong>
   * <strong>hash_file()</strong>


id: hash_init
type: function
doc:
<comment>Description:</comment>
  初始化增量散列运算上下文

<comment>Param:</comment>
  <info>string</info>  <strong>$algo</strong>     要使用的散列算法名称，例如：“md5”、“sha256”、“haval160,4”等。如何获取受支持的算
                    法清单，请参见 <strong>hash_algos()</strong>。
  <info>int</info>     <strong>$flags</strong>    进行散列运算的可选设置，目前仅支持一个选项：<info>HASH_HMAC</info>。当指定此选项的时候，必须
                    指定 <strong>$key</strong> 参数。
  <info>string</info>  <strong>$key</strong>      当 <strong>$flags</strong> 参数为  <info>HASH_HMAC</info> 时，使用此参数传入进行 HMAC 散列运算时的共享密钥。
  <info>array</info>   <strong>$options</strong>  各种散列算法的一系列选项数组。目前 MurmurHash 算法仅支持 “seed” 参数。

<comment>Return:</comment>
  <info>HashContext</info>  返回散列运算上下文对象，以供 <strong>hash_update()</strong>、<strong>hash_update_stream()</strong>、<strong>hash_update_file()</strong>
               和 <strong>hash_final()</strong> 函数使用。

<comment>See Also:</comment>
   * <strong>hash()</strong>
   * <strong>hash_algos()</strong>
   * <strong>hash_file()</strong>
   * <strong>hash_hmac()</strong>
   * <strong>hash_hmac_file()</strong>


id: hash_pbkdf2
type: function
doc:
<comment>Description:</comment>
  生成所提供密码的 PBKDF2 密钥导出

<comment>Param:</comment>
  <info>string</info>  <strong>$algo</strong>        散列算法名称，例如 <return>md5</return>、<return>sha256</return>、<return>haval160,4</return> 等。 受支持的算法清单请参见
                       <strong>hash_algos()</strong>。
  <info>string</info>  <strong>$password</strong>    要进行导出的密码。
  <info>string</info>  <strong>$salt</strong>        进行导出时所使用的“盐”，这个值应该是随机生成的。
  <info>int</info>     <strong>$iterations</strong>  进行导出时的迭代次数。
  <info>int</info>     <strong>$length</strong>      密钥导出数据的长度。如果 <strong>$binary</strong> 为 <info>true</info>， 此参数为密钥导出数据的字节长度。如
                       果 <strong>$binary</strong> 为 <info>false</info>， 此参数为密钥导出数据的字节长度的 2 倍，因为 1 个字节数
                       据对应的 2 个 16 进制的字符。
                       
                       如果传入 <return>0</return>，则使用所选算法的完整输出大小。
  <info>bool</info>    <strong>$binary</strong>      设置为 <info>true</info> 输出原始二进制数据， 设置为 <info>false</info> 输出小写 16 进制字符串。

<comment>Return:</comment>
  <info>string</info>  如果 <strong>$binary</strong> 设置为 <info>true</info>，  则返回原始二进制数据表示的信息摘要， 否则返回 16 进制小写字符
          串格式表示的信息摘要。

<comment>See Also:</comment>
   * <strong>password_hash()</strong>
   * <strong>hash_hkdf()</strong>
   * <strong>sodium_crypto_pwhash()</strong>


id: hash_update
type: function
doc:
<comment>Description:</comment>
  向活跃的哈希运算上下文中填充数据

<comment>Param:</comment>
  <info>HashContext</info>  <strong>$context</strong>  由 <strong>hash_init()</strong> 函数返回的哈希运算上下文。
  <info>string</info>       <strong>$data</strong>     要向哈希摘要中追加的数据。

<comment>Return:</comment>
  <info>bool</info>  返回 <info>true</info>。

<comment>See Also:</comment>
   * <strong>hash_init()</strong>
   * <strong>hash_update_file()</strong>
   * <strong>hash_update_stream()</strong>
   * <strong>hash_final()</strong>


id: hash_update_file
type: function
doc:
<comment>Description:</comment>
  从文件向活跃的散列运算上下文中填充数据

<comment>Param:</comment>
  <info>HashContext</info>    <strong>$context</strong>         由 <strong>hash_init()</strong> 函数返回的散列运算上下文。
  <info>string</info>         <strong>$filename</strong>        要进行散列运算的文件路径，支持 fopen 封装器。
  <info>resource|null</info>  <strong>$stream_context</strong>  由 <strong>stream_context_create()</strong> 函数返回的流上下文。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>hash_init()</strong>
   * <strong>hash_update()</strong>
   * <strong>hash_update_stream()</strong>
   * <strong>hash_final()</strong>
   * <strong>hash()</strong>
   * <strong>hash_file()</strong>


id: hash_update_stream
type: function
doc:
<comment>Description:</comment>
  从打开的流向活跃的散列运算上下文中填充数据

<comment>Param:</comment>
  <info>HashContext</info>  <strong>$context</strong>  由 <strong>hash_init()</strong> 函数返回的散列运算上下文。
  <info>resource</info>     <strong>$stream</strong>   创建流的函数返回的打开的文件句柄。
  <info>int</info>          <strong>$length</strong>   要从 <strong>$stream</strong> 向活跃的散列运算上下文中拷贝的最大字符数。

<comment>Return:</comment>
  <info>int</info>  从 <strong>$stream</strong> 向散列运算上下文中实际填充的字节数量。

<comment>See Also:</comment>
   * <strong>hash_init()</strong>
   * <strong>hash_update()</strong>
   * <strong>hash_final()</strong>
   * <strong>hash()</strong>
   * <strong>hash_file()</strong>


id: header
type: function
doc:
<comment>Description:</comment>
  发送原生 HTTP 头
  
  <strong>header()</strong> 用于发送原生的 HTTP 头。关于 HTTP 头的更多信息请参考 HTTP/1.1 specification。
  
  请注意 <strong>header()</strong> 必须在任何实际输出之前调用，不管是普通的 HTML 标签，还是文件或 PHP 输出的空行，空
  格。这是个常见的错误，在通过<strong>include()</strong>，<strong>require()</strong>，或者其访问其他文件里面的函数的时候，如果在
  <strong>header()</strong>被调用之前，其中有空格或者空行。 同样的问题也存在于单独的 PHP/HTML 文件中。
  
  ]]>

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>         头字符串。
                          
                          有两种特别的头。第一种以“<return>HTTP/</return>”开头的 (case is not significant)，将会被用
                          来计算出将要发送的HTTP状态码。  例如在 Apache 服务器上用 PHP 脚本来处理不
                          存在文件的请求（使用 <return>ErrorDocument</return> 指令）， 就会希望脚本响应了正确的状态
                          码。
                          
                          
                          ]]>
                          
                          第二种特殊情况是“Location:”的头信息。它不仅把报文发送给浏览器，而且还将返
                          回给浏览器一个 <return>REDIRECT</return>（302）的状态码，除非状态码已经事先被设置为了<return>201</return>或
                          者<return>3xx</return>。
                          
                          
                          ]]>
  <info>bool</info>    <strong>$replace</strong>        可选参数 <strong>$replace</strong> 表明是否用后面的头替换前面相同类型的头。  默认情况下会替
                          换。如果传入 <info>false</info>，就可以强制使相同的头信息并存。例如：
                          
                          
                          ]]>
  <info>int</info>     <strong>$response_code</strong>  强制指定 HTTP 响应的值。注意，这个参数只有在报文字符串（<strong>$header</strong>）不为空的
                          情况下才有效。

<comment>Return:</comment>
  <info>void</info>  没有返回值。

<comment>See Also:</comment>
   * <strong>headers_sent()</strong>
   * <strong>setcookie()</strong>
   * <strong>http_response_code()</strong>
   * <strong>header_remove()</strong>
   * <strong>headers_list()</strong>
   * 
     The section on HTTP
     authentication
    


id: header_register_callback
type: function
doc:
<comment>Description:</comment>
  调用一个 header 函数
  
  注册一个函数，在 PHP 开始发送输出时调用。
  
  PHP 准备好所有响应头，在发送内容之前执行 <strong>$callback</strong>，创建了一个发送响应头的操作窗口。

<comment>Param:</comment>
  <info>callable</info>  <strong>$callback</strong>  在头发送前调用函数。 它没有参数，返回的值也会被忽略。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>headers_list()</strong>
   * <strong>header_remove()</strong>
   * <strong>header()</strong>


id: header_remove
type: function
doc:
<comment>Description:</comment>
  删除之前设置的 HTTP 头
  
  删除之前用 <strong>header()</strong> 设置的 HTTP 头。

<comment>Param:</comment>
  <info>string|null</info>  <strong>$name</strong>  要移除的头名称。当为 <info>null</info>，移除之前设置的所有 header。
                      
                      参数不分大小写。

<comment>Return:</comment>
  <info>void</info>  没有返回值。

<comment>See Also:</comment>
   * <strong>header()</strong>
   * <strong>headers_sent()</strong>


id: headers_list
type: function
doc:
<comment>Description:</comment>
  返回已发送的 HTTP 响应头（或准备发送的）
  
  <strong>headers_list()</strong> 会返回准备发送给浏览器/客户端的 HTTP 头列表。 检测这些头是否已经发送，使用
  <strong>headers_sent()</strong>。

<comment>Return:</comment>
  <info>array</info>  返回数字索引的头数组。

<comment>See Also:</comment>
   * <strong>headers_sent()</strong>
   * <strong>header()</strong>
   * <strong>setcookie()</strong>
   * <strong>apache_response_headers()</strong>
   * <strong>http_response_code()</strong>


id: headers_sent
type: function
doc:
<comment>Description:</comment>
  检测消息头是否已经发送
  
  检测消息头是否已经发送。
  
  消息头已经发送时，就无法通过 <strong>header()</strong>  添加更多头字段。使用此函数起码可以防止收到跟消息头相关的错
  误。另一个解决方案是用输出缓冲。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  若设置了可选参数 <strong>$filename</strong> 和 <strong>$line</strong>，<strong>headers_sent()</strong> 会把 PHP 文件名放在
                     <strong>$filename</strong> 变量里，输出开始的行号放在 <strong>$line</strong> 变量里。
                     
                     如果在执行 PHP 源文件之前已经开始输出（例如由于启动错误），则 <strong>$filename</strong> 参数将
                     被设置为空字符串。
  <info>int</info>     <strong>$line</strong>      输出开始的行号。

<comment>Return:</comment>
  <info>bool</info>  消息头未发送时，<strong>headers_sent()</strong> 返回 <info>false</info>，否则返回 <info>true</info>。

<comment>See Also:</comment>
   * <strong>ob_start()</strong>
   * <strong>trigger_error()</strong>
   * <strong>headers_list()</strong>
   * <strong>header()</strong> 中有更多相关细节的讨论。
    


id: hebrev
type: function
doc:
<comment>Description:</comment>
  将逻辑顺序希伯来文（logical-Hebrew）转换为视觉顺序希伯来文（visual-Hebrew）
  
  将逻辑顺序希伯来文（logical-Hebrew）转换为视觉顺序希伯来文（visual-Hebrew）
  
  函数将会尝试避免破坏单词。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>              逻辑顺序希伯来文字符串。
  <info>int</info>     <strong>$max_chars_per_line</strong>  可选参数，表示每行可返回的最多字符数。

<comment>Return:</comment>
  <info>string</info>  返回视觉顺序字符串。

<comment>See Also:</comment>
   * <strong>hebrevc()</strong>


id: hebrevc
type: function
doc:
<comment>Description:</comment>
  将逻辑顺序希伯来文（logical-Hebrew）转换为视觉顺序希伯来文（visual-Hebrew），并且转换换行符
  
  本函数与<strong>hebrev()</strong> 一样，唯一的区别是 本函数会额外将换行符(\n)转换为"\<br&gt;\n"。
  
  函数将会尝试避免破坏单词。

<comment>Param:</comment>
  <info>string</info>  <strong>$hebrew_text</strong>         逻辑顺序希伯来文字符串。
  <info>int</info>     <strong>$max_chars_per_line</strong>  可选参数，表示每行可返回的最多字符数。

<comment>Return:</comment>
  <info>string</info>  返回视觉顺序字符串。

<comment>See Also:</comment>
   * <strong>hebrev()</strong>


id: hex2bin
type: function
doc:
<comment>Description:</comment>
  转换十六进制字符串为二进制字符串
  
  转换十六进制字符串为二进制字符串。
  
  这个函数不是 转换十六进制数字为二进制数字。这种转换可以使用<strong>base_convert()</strong> 函数。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  十六进制表示的数据

<comment>Return:</comment>
  <info>string|false</info>  返回给定数据的二进制表示  或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>bin2hex()</strong>
   * <strong>unpack()</strong>


id: hexdec
type: function
doc:
<comment>Description:</comment>
  十六进制转换为十进制
  
  返回与 <strong>$hex_string</strong> 参数所表示的十六进制数等值的的十进制数。<strong>hexdec()</strong> 将一个十六进制字符串转换为十进
  制数。
  
  <strong>hexdec()</strong> 会忽略它遇到的任意非十六进制的字符。自 PHP 7.4.0 起，弃用使用任何无效字符。

<comment>Param:</comment>
  <info>string</info>  <strong>$hex_string</strong>  要转换的十六进制的字符串

<comment>Return:</comment>
  <info>int|float</info>  <strong>$hex_string</strong> 十进制的表示

<comment>See Also:</comment>
   * <strong>dechex()</strong>
   * <strong>bindec()</strong>
   * <strong>octdec()</strong>
   * <strong>base_convert()</strong>


id: highlight_file
type: function
doc:
<comment>Description:</comment>
  语法高亮一个文件
  
  使用 PHP 内置的语法高亮器所定义的颜色，打印输出或者返回 <strong>$filename</strong> 文件中语法高亮版本的代码。
  
  许多服务器配置了自动高亮 phps 扩展的文件。比如，访问 example.phps  会显示语法高亮后的文件。添加以
  下一行代码到 httpd.conf 使此生效：

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  欲高亮文件的路径。
  <info>bool</info>    <strong>$return</strong>    设置该参数为 <info>true</info> 使函数返回高亮后的代码。

<comment>Return:</comment>
  <info>string|bool</info>  如果 <strong>$return</strong> 设置为 <info>true</info>，高亮后的代码不会被打印输出，而是以字符串的形式返回。高亮成
               功返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>highlight_string()</strong>
   * 高亮 INI 指令


id: highlight_string
type: function
doc:
<comment>Description:</comment>
  字符串的语法高亮
  
  使用 PHP 内置的语法高亮器所定义的颜色，打印输出或者返回输出或者返回语法高亮版本的 PHP 代码。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  需要高亮的 PHP 代码，应当包含开始标签。
  <info>bool</info>    <strong>$return</strong>  设置该参数为 <info>true</info> 使函数返回高亮后的代码。

<comment>Return:</comment>
  <info>string|bool</info>  如果 <strong>$return</strong> 设置为 <info>true</info>，高亮后的代码不会被打印输出，而是以字符串的形式返回。 高亮成
               功返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>highlight_file()</strong>
   * 高亮 INI 指令


id: hrtime
type: function
doc:
<comment>Description:</comment>
  获取系统的高精度时间
  
  从任意时间点开始统计，返回系统的高精度时间（high resolution time）。 获取的时间戳为单调时间，无法
  被用户调整。

<comment>Param:</comment>
  <info>bool</info>  <strong>$as_number</strong>  以 <info>array</info> 还是数字返回高精度时间。

<comment>Return:</comment>
  <info>array|int|float|false</info>  参数 <strong>$as_number</strong> 为 false 时，返回的整型数组格式为 [seconds, nanoseconds]。
                         否则会以 <info>int</info> （64 位平台）或 <info>float</info> （32 位平台）返回奈秒（nanoseconds）。失
                         败时返回 <info>false</info>。

<comment>See Also:</comment>
   * 高精度记时扩展
   * <strong>microtime()</strong>


id: html_entity_decode
type: function
doc:
<comment>Description:</comment>
  Convert HTML entities to their corresponding characters
  
  <strong>html_entity_decode()</strong> is the opposite of <strong>htmlentities()</strong> in that it converts HTML entities in the
  <strong>$string</strong> to their corresponding characters.
  
  More precisely, this function decodes all the entities (including all numeric entities) that a)
  are necessarily valid for the chosen document type — i.e., for XML, this function does not decode
  named entities that might be defined in some DTD — and b) whose character or characters are in the
  coded character set associated with the chosen encoding and are permitted in the chosen document
  type. All other entities are left as is.

<comment>Param:</comment>
  <info>string</info>       <strong>$string</strong>    The input string.
  <info>int</info>          <strong>$flags</strong>     A bitmask of one or more of the following flags, which specify how to
                          handle quotes and which document type to use. The default is <return>ENT_QUOTES |
                          ENT_SUBSTITUTE | ENT_HTML401</return>. Available <strong>$flags</strong> constantsConstant
                          NameDescription<info>ENT_COMPAT</info>Will convert double-quotes and leave
                          single-quotes alone.<info>ENT_QUOTES</info>Will convert both double and single
                          quotes.<info>ENT_NOQUOTES</info>Will leave both double and single quotes
                          unconverted.<info>ENT_SUBSTITUTE</info> Replace invalid code unit sequences with a
                          Unicode Replacement Character U+FFFD (UTF-8) or &#xFFFD; (otherwise)
                          instead of returning an empty string. <info>ENT_HTML401</info> Handle code as HTML
                          4.01. <info>ENT_XML1</info> Handle code as XML 1. <info>ENT_XHTML</info> Handle code as XHTML.
                          <info>ENT_HTML5</info> Handle code as HTML 5.
  <info>string|null</info>  <strong>$encoding</strong>  An optional argument defining the encoding used when converting
                          characters.
                          
                          If omitted, <strong>$encoding</strong> defaults to the value of the default_charset
                          configuration option.
                          
                          Although this argument is technically optional, you are highly encouraged
                          to specify the correct value for your code if the default_charset
                          configuration option may be set incorrectly for the given input.
                          
                          支持以下字符集： 支持的字符集列表字符集别名描述ISO-8859-1ISO8859-1 西欧，
                          Latin-1 ISO-8859-5ISO8859-5 Little used cyrillic charset (Latin/Cyrillic).
                          ISO-8859-15ISO8859-15 西欧，Latin-9。增加欧元符号，法语和芬兰语字母在
                          Latin-1(ISO-8859-1) 中缺失。 UTF-8 ASCII 兼容的多字节 8 位 Unicode。
                          cp866ibm866, 866 DOS 特有的西里尔编码。本字符集在 4.3.2 版本中得到支持。
                          cp1251Windows-1251, win-1251, 1251 Windows 特有的西里尔编码。本字符集在
                          4.3.2 版本中得到支持。 cp1252Windows-1252, 1252 Windows 特有的西欧编码。
                          KOI8-Rkoi8-ru, koi8r 俄语。本字符集在 4.3.2 版本中得到支持。 BIG5950 繁体
                          中文，主要用于中国台湾省。 GB2312936 简体中文，中国国家标准字符集。
                          BIG5-HKSCS 繁体中文，附带香港扩展的 Big5 字符集。 Shift_JISSJIS, 932 日语
                          EUC-JPEUCJP 日语 MacRoman Mac OS 使用的字符串。 <return>''</return> An empty string
                          activates detection from script encoding (Zend multibyte), default_charset
                          and current locale (see <strong>nl_langinfo()</strong> and <strong>setlocale()</strong>), in this order. Not
                          recommended.   其他字符集没有认可。将会使用默认编码并抛出异常。
                          
                          其他字符集没有认可。将会使用默认编码并抛出异常。

<comment>Return:</comment>
  <info>string</info>  Returns the decoded string.

<comment>See Also:</comment>
   * <strong>htmlentities()</strong>
   * <strong>htmlspecialchars()</strong>
   * <strong>get_html_translation_table()</strong>
   * <strong>urldecode()</strong>


id: htmlentities
type: function
doc:
<comment>Description:</comment>
  将字符转换为 HTML 转义字符
  
  本函数各方面都和 <strong>htmlspecialchars()</strong> 一样，除了 <strong>htmlentities()</strong> 会转换所有具有 HTML  实体的字符。
  <strong>get_html_translation_table()</strong> 可根据提供的 <strong>$flags</strong> 常量返回使用的翻译表。
  
  如果要解码（反向操作），可以使用 <strong>html_entity_decode()</strong>。

<comment>Param:</comment>
  <info>string</info>       <strong>$string</strong>         输入字符。
  <info>int</info>          <strong>$flags</strong>          以下一组位掩码标记，用于设置如何处理引号、无效代码序列、使用文档的类
                               型。默认是 <return>ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401</return>。 有效 <strong>$flags</strong> 标
                               记常量常量名描述<info>ENT_COMPAT</info>会转换双引号，不转换单引号。<info>ENT_QUOTES</info>既转
                               换双引号也转换单引号。<info>ENT_NOQUOTES</info>单/双引号都不转换<info>ENT_IGNORE</info> 静默丢
                               弃无效的代码单元序列，而不是返回空字符串。 不建议使用此标记， 因为它
                               可能有安全影响。 <info>ENT_SUBSTITUTE</info> 替换无效的代码单元序列为 Unicode 代替
                               符（Replacement Character）， U+FFFD (UTF-8) 或者 &#xFFFD; (其他)，而
                               不是返回空字符串。 <info>ENT_DISALLOWED</info> 为文档的无效代码点替换为  Unicode
                               代替符（Replacement Character）： U+FFFD (UTF-8)，或 &#xFFFD;（其
                               他），而不是把它们留在原处。 比如以下情况下就很有用：要保证 XML 文档
                               嵌入额外内容时格式合法。 <info>ENT_HTML401</info> 以 HTML 4.01 处理代码。 <info>ENT_XML1</info>
                               以 XML 1 处理代码。 <info>ENT_XHTML</info> 以 XHTML 处理代码。 <info>ENT_HTML5</info> 以 HTML 5
                               处理代码。
  <info>string|null</info>  <strong>$encoding</strong>       An optional argument defining the encoding used when converting
                               characters.
                               
                               If omitted, <strong>$encoding</strong> defaults to the value of the default_charset
                               configuration option.
                               
                               Although this argument is technically optional, you are highly
                               encouraged to specify the correct value for your code if the
                               default_charset configuration option may be set incorrectly for the
                               given input.
                               
                               支持以下字符集： 支持的字符集列表字符集别名描述ISO-8859-1ISO8859-1 西
                               欧，Latin-1 ISO-8859-5ISO8859-5 Little used cyrillic charset
                               (Latin/Cyrillic). ISO-8859-15ISO8859-15 西欧，Latin-9。增加欧元符号，
                               法语和芬兰语字母在 Latin-1(ISO-8859-1) 中缺失。 UTF-8 ASCII 兼容的多
                               字节 8 位 Unicode。 cp866ibm866, 866 DOS 特有的西里尔编码。本字符集在
                               4.3.2 版本中得到支持。 cp1251Windows-1251, win-1251, 1251 Windows 特
                               有的西里尔编码。本字符集在 4.3.2 版本中得到支持。 cp1252Windows-1252,
                               1252 Windows 特有的西欧编码。 KOI8-Rkoi8-ru, koi8r 俄语。本字符集在
                               4.3.2 版本中得到支持。 BIG5950 繁体中文，主要用于中国台湾省。
                               GB2312936 简体中文，中国国家标准字符集。 BIG5-HKSCS 繁体中文，附带香
                               港扩展的 Big5 字符集。 Shift_JISSJIS, 932 日语 EUC-JPEUCJP 日语
                               MacRoman Mac OS 使用的字符串。 <return>''</return> An empty string activates detection
                               from script encoding (Zend multibyte), default_charset and current
                               locale (see <strong>nl_langinfo()</strong> and <strong>setlocale()</strong>), in this order. Not
                               recommended.   其他字符集没有认可。将会使用默认编码并抛出异常。
                               
                               其他字符集没有认可。将会使用默认编码并抛出异常。
  <info>bool</info>         <strong>$double_encode</strong>  关闭 <strong>$double_encode</strong> 时，PHP 不会转换现有的 HTML 实体， 默认是全部转
                               换。

<comment>Return:</comment>
  <info>string</info>  返回编码后的字符。
          
          如果指定的编码 <strong>$encoding</strong> 里， <strong>$string</strong> 包含了无效的代码单元序列， 没有设置 <info>ENT_IGNORE</info> 或者
          <info>ENT_SUBSTITUTE</info> 标记的情况下，会返回空字符串。

<comment>See Also:</comment>
   * <strong>html_entity_decode()</strong>
   * <strong>get_html_translation_table()</strong>
   * <strong>htmlspecialchars()</strong>
   * <strong>nl2br()</strong>
   * <strong>urlencode()</strong>


id: htmlspecialchars
type: function
doc:
<comment>Description:</comment>
  将特殊字符转换为 HTML 实体
  
  某类字符在 HTML 中有特殊用处，如需保持原意，需要用 HTML 实体来表达。 本函数会返回字符转义后的表
  达。 如需转换子字符串中所有关联的名称实体，使用 <strong>htmlentities()</strong> 代替本函数。
  
  如果传入字符的字符编码和最终的文档是一致的，则用函数处理的输入适合绝大多数 HTML 文档环境。 然而，
  如果输入的字符编码和最终包含字符的文档是不一样的， 想要保留字符（以数字或名称实体的形式），本函数
  以及 <strong>htmlentities()</strong>  （仅编码名称实体对应的子字符串）可能不够用。 这种情况可以使用
  <strong>mb_encode_numericentity()</strong> 代替。
  
  执行转换字符替换后<return>&</return> (& 符号)<return>&amp;</return><return>"</return> (双引号)<return>&quot;</return>，除非设置了 <info>ENT_NOQUOTES</info><return>'</return> (单引号) 设置了
  <info>ENT_QUOTES</info> 后， <return>&#039;</return> (如果是 <info>ENT_HTML401</info>) ，或者 <return>&apos;</return> (如果是 <info>ENT_XML1</info>、 <info>ENT_XHTML</info> 或
  <info>ENT_HTML5</info>)。 <return>\<</return> (小于)<return>&lt;</return><return>&gt;</return> (大于)<return>&gt;</return>

<comment>Param:</comment>
  <info>string</info>       <strong>$string</strong>         待转换的 <info>string</info>。
  <info>int</info>          <strong>$flags</strong>          位掩码，由以下某个或多个标记组成，设置转义处理细节、无效单元序列、文
                               档类型。 默认是 <return>ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401</return>。 有效的
                               <strong>$flags</strong> 常量常量名称描述<info>ENT_COMPAT</info>会转换双引号，不转换单引号。
                               <info>ENT_QUOTES</info>既转换双引号也转换单引号。<info>ENT_NOQUOTES</info>单/双引号都不转换
                               <info>ENT_IGNORE</info> 静默丢弃无效的代码单元序列，而不是返回空字符串。 不建议使
                               用此标记， 因为它可能有安全影响。 <info>ENT_SUBSTITUTE</info> 替换无效的代码单元序
                               列为 Unicode 代替符（Replacement Character）， U+FFFD (UTF-8) 或者
                               &#xFFFD; (其他)，而不是返回空字符串。 <info>ENT_DISALLOWED</info> 为文档的无效代码
                               点替换为  Unicode 代替符（Replacement Character）： U+FFFD (UTF-8)，
                               或 &#xFFFD;（其他），而不是把它们留在原处。 比如以下情况下就很有用：
                               要保证 XML 文档嵌入额外内容时格式合法。 <info>ENT_HTML401</info> 以 HTML 4.01 处理
                               代码。 <info>ENT_XML1</info> 以 XML 1 处理代码。 <info>ENT_XHTML</info> 以 XHTML 处理代码。
                               <info>ENT_HTML5</info> 以 HTML 5 处理代码。
  <info>string|null</info>  <strong>$encoding</strong>       An optional argument defining the encoding used when converting
                               characters.
                               
                               If omitted, <strong>$encoding</strong> defaults to the value of the default_charset
                               configuration option.
                               
                               Although this argument is technically optional, you are highly
                               encouraged to specify the correct value for your code if the
                               default_charset configuration option may be set incorrectly for the
                               given input.
                               
                               本函数使用效果上，如果 <strong>$string</strong> 对以下字符编码是有效的， <return>ISO-8859-1</return>、
                               <return>ISO-8859-15</return>、 <return>UTF-8</return>、 <return>cp866</return>、 <return>cp1251</return>、 <return>cp1252</return>、 <return>KOI8-R</return> 将具有相同的效
                               果。 也就是说，在这些编码里， 受 <strong>htmlspecialchars()</strong> 影响的字符会占据
                               相同的位置。
                               
                               支持以下字符集： 支持的字符集列表字符集别名描述ISO-8859-1ISO8859-1 西
                               欧，Latin-1 ISO-8859-5ISO8859-5 Little used cyrillic charset
                               (Latin/Cyrillic). ISO-8859-15ISO8859-15 西欧，Latin-9。增加欧元符号，
                               法语和芬兰语字母在 Latin-1(ISO-8859-1) 中缺失。 UTF-8 ASCII 兼容的多
                               字节 8 位 Unicode。 cp866ibm866, 866 DOS 特有的西里尔编码。本字符集在
                               4.3.2 版本中得到支持。 cp1251Windows-1251, win-1251, 1251 Windows 特
                               有的西里尔编码。本字符集在 4.3.2 版本中得到支持。 cp1252Windows-1252,
                               1252 Windows 特有的西欧编码。 KOI8-Rkoi8-ru, koi8r 俄语。本字符集在
                               4.3.2 版本中得到支持。 BIG5950 繁体中文，主要用于中国台湾省。
                               GB2312936 简体中文，中国国家标准字符集。 BIG5-HKSCS 繁体中文，附带香
                               港扩展的 Big5 字符集。 Shift_JISSJIS, 932 日语 EUC-JPEUCJP 日语
                               MacRoman Mac OS 使用的字符串。 <return>''</return> An empty string activates detection
                               from script encoding (Zend multibyte), default_charset and current
                               locale (see <strong>nl_langinfo()</strong> and <strong>setlocale()</strong>), in this order. Not
                               recommended.   其他字符集没有认可。将会使用默认编码并抛出异常。
                               
                               其他字符集没有认可。将会使用默认编码并抛出异常。
  <info>bool</info>         <strong>$double_encode</strong>  关闭 <strong>$double_encode</strong> 时，PHP 不会转换现有的 HTML 实体， 默认是全部转
                               换。

<comment>Return:</comment>
  <info>string</info>  转换后的 <info>string</info>。
          
          如果指定的编码 <strong>$encoding</strong> 里， <strong>$string</strong> 包含了无效的代码单元序列， 没有设置 <info>ENT_IGNORE</info> 或者
          <info>ENT_SUBSTITUTE</info> 标记的情况下，会返回空字符串。

<comment>See Also:</comment>
   * <strong>get_html_translation_table()</strong>
   * <strong>htmlspecialchars_decode()</strong>
   * <strong>strip_tags()</strong>
   * <strong>htmlentities()</strong>
   * <strong>nl2br()</strong>


id: htmlspecialchars_decode
type: function
doc:
<comment>Description:</comment>
  将特殊的 HTML 实体转换回普通字符
    
  
  此函数的作用和 <strong>htmlspecialchars()</strong> 刚好相反。它将特殊的HTML实体转换回普通字符。
  
  被转换的实体有： ， （没有设置<info>ENT_NOQUOTES</info> 时）, <return>&#039;</return> （设置了 <info>ENT_QUOTES</info> 时）， 以及。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  要解码的字符串
  <info>int</info>     <strong>$flags</strong>   用下列标记中的一个或多个作为一个位掩码，来指定如何处理引号和使用哪种文档类型。默
                   认为 <return>ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401</return>。 有效的 <strong>$flags</strong> 常量常量名说明
                   <info>ENT_COMPAT</info>转换双引号，不转换单引号。<info>ENT_QUOTES</info>单引号和双引号都转换。
                   <info>ENT_NOQUOTES</info>单引号和双引号都不转换。<info>ENT_SUBSTITUTE</info> 使用 Unicode 替换符 U+FFFD
                   (UTF-8) 或 &#xFFFD 替换无效的码区序列（code unit sequence）。而不是返回空字符串。
                   <info>ENT_HTML401</info> 作为HTML 4.01编码处理。 <info>ENT_XML1</info> 作为XML 1编码处理。 <info>ENT_XHTML</info> 作为
                   XHTML编码处理。 <info>ENT_HTML5</info> 作为HTML 5编码处理。

<comment>Return:</comment>
  <info>string</info>  返回解码后的字符串。

<comment>See Also:</comment>
   * <strong>htmlspecialchars()</strong>
   * <strong>html_entity_decode()</strong>
   * <strong>get_html_translation_table()</strong>


id: http_build_query
type: function
doc:
<comment>Description:</comment>
  生成 URL-encode 之后的请求字符串
  
  使用给出的关联（或下标）数组生成一个经过 URL-encode 的请求字符串。

<comment>Param:</comment>
  <info>array|object</info>  <strong>$data</strong>            可以是数组或包含属性的对象。
                                 
                                 如果 <strong>$data</strong> 是数组，可以是一维结构，也可以是由数组组成的数组（其依次
                                 可以包含其它数组）。
                                 
                                 如果 <strong>$data</strong> 是一个对象，只有 public 的属性会加入结果。
  <info>string</info>        <strong>$numeric_prefix</strong>  如果在基础数组中使用了数字下标同时给出了该参数，此参数值将会作为基
                                 础数组中的数字下标元素的前缀。
                                 
                                 这是为了让 PHP 或其它 CGI 程序在稍后对数据进行解码时获取合法的变量
                                 名。
  <info>string|null</info>   <strong>$arg_separator</strong>   参数分隔符。如果未设置或为 <info>null</info>，arg_separator.output 用于分隔参
                                 数。
  <info>int</info>           <strong>$encoding_type</strong>   默认使用 <info>PHP_QUERY_RFC1738</info>。
                                 
                                 如果 <strong>$encoding_type</strong> 是 <info>PHP_QUERY_RFC1738</info>，则编码将会以 RFC 1738 标
                                 准和 <return>application/x-www-form-urlencoded</return> 媒体类型进行编码，空格会被编
                                 码成加号（<return>+</return>）。
                                 
                                 如果 <strong>$encoding_type</strong> 是 <info>PHP_QUERY_RFC3986</info>，将根据 RFC 3986 编码，空
                                 格会被百分号编码（<return>%20</return>）。

<comment>Return:</comment>
  <info>string</info>  返回一个 URL 编码后的字符串。

<comment>See Also:</comment>
   * <strong>parse_str()</strong>
   * <strong>parse_url()</strong>
   * <strong>urlencode()</strong>
   * <strong>array_walk()</strong>


id: http_response_code
type: function
doc:
<comment>Description:</comment>
  获取/设置响应的 HTTP 状态码
  
  获取或者设置响应的 HTTP 状态码。

<comment>Param:</comment>
  <info>int</info>  <strong>$response_code</strong>  可选的 <strong>$response_code</strong> 会设置响应的状态码。

<comment>Return:</comment>
  <info>int|bool</info>  如果提供了 <strong>$response_code</strong>，将返回先前的状态码。 如果未提供 <strong>$response_code</strong>，会返回当前的
            状态码。 在 Web 服务器环境里，这些状态码的默认值都是 <return>200</return>。
            
            如果在非 Web 服务器环境里调用（比如 CLI 应用里）， 不提供 <strong>$response_code</strong> 就会返回 <info>false</info>
            。 在非 Web 服务器环境里，提供 <strong>$response_code</strong>  会返回 <info>true</info>  （仅仅在先前没有设置过状态码
            的时候）。

<comment>See Also:</comment>
   * <strong>header()</strong>
   * <strong>headers_list()</strong>


id: hypot
type: function
doc:
<comment>Description:</comment>
  计算直角三角形的斜边长度
    
  
  <strong>hypot()</strong> 函数将会根据直角三角形的两直角边长度 <strong>$x</strong> 和 <strong>$y</strong> 计算其斜边的长度。或者是坐标点 （<strong>$x</strong>, <strong>$y</strong>）到
  原点的距离。该函数的算法等同于 sqrt($x*$x + $y*$y)。

<comment>Param:</comment>
  <info>float</info>  <strong>$x</strong>  第一条边的长度
  <info>float</info>  <strong>$y</strong>  第二条边的长度

<comment>Return:</comment>
  <info>float</info>  计算斜边的长度


id: ibase_add_user
type: function
doc:
<comment>Description:</comment>
  Add a user to a security database

<comment>Param:</comment>
  <info>resource</info>  <strong>$service_handle</strong>  The handle on the database server service.
  <info>string</info>    <strong>$user_name</strong>       The login name of the new database user.
  <info>string</info>    <strong>$password</strong>        The password of the new user.
  <info>string</info>    <strong>$first_name</strong>      The first name of the new database user.
  <info>string</info>    <strong>$middle_name</strong>     The middle name of the new database user.
  <info>string</info>    <strong>$last_name</strong>       The last name of the new database user.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>ibase_modify_user()</strong>
   * <strong>ibase_delete_user()</strong>


id: ibase_affected_rows
type: function
doc:
<comment>Description:</comment>
  Return the number of rows that were affected by the previous query
  
  This function returns the number of rows that were affected by the previous query (INSERT, UPDATE
  or DELETE) that was executed from within the specified transaction context.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link_identifier</strong>  A transaction context. If <strong>$link_identifier</strong> is a connection resource,
                              its default transaction is used.

<comment>Return:</comment>
  <info>int</info>  Returns the number of rows as an integer.

<comment>See Also:</comment>
   * <strong>ibase_query()</strong>
   * <strong>ibase_execute()</strong>


id: ibase_backup
type: function
doc:
<comment>Description:</comment>
  Initiates a backup task in the service manager and returns immediately
  
  This function passes the arguments to the (remote) database server. There it starts a new backup
  process. Therefore you won't get any responses.

<comment>Param:</comment>
  <info>resource</info>  <strong>$service_handle</strong>  A previously opened connection to the database server.
  <info>string</info>    <strong>$source_db</strong>       The absolute file path to the database on the database server. You can
                             also use a database alias.
  <info>string</info>    <strong>$dest_file</strong>       The path to the backup file on the database server.
  <info>int</info>       <strong>$options</strong>         Additional options to pass to the database server for backup. The
                             <strong>$options</strong> parameter can be a combination  of the following constants:
                             <info>IBASE_BKP_IGNORE_CHECKSUMS</info>, <info>IBASE_BKP_IGNORE_LIMBO</info>,
                             <info>IBASE_BKP_METADATA_ONLY</info>, <info>IBASE_BKP_NO_GARBAGE_COLLECT</info>,
                             <info>IBASE_BKP_OLD_DESCRIPTIONS</info>, <info>IBASE_BKP_NON_TRANSPORTABLE</info> or
                             <info>IBASE_BKP_CONVERT</info>. Read the section about  for further information.
  <info>bool</info>      <strong>$verbose</strong>         Since the backup process is done on the database server, you don't have
                             any chance to get its output. This argument is useless.

<comment>Return:</comment>
  <info>mixed</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。
         
         Since the backup process is done on the (remote) server, this function just passes the
         arguments to it. While the arguments are legal, you won't get <info>false</info>.

<comment>See Also:</comment>
   * <strong>ibase_restore()</strong>


id: ibase_blob_add
type: function
doc:
<comment>Description:</comment>
  Add data into a newly created blob
  
  <strong>ibase_blob_add()</strong> adds data into a blob created with <strong>ibase_blob_create()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$blob_handle</strong>  A blob handle opened with <strong>ibase_blob_create()</strong>.
  <info>string</info>    <strong>$data</strong>         The data to be added.

<comment>Return:</comment>
  <info>void</info>  没有返回值。

<comment>See Also:</comment>
   * <strong>ibase_blob_cancel()</strong>
   * <strong>ibase_blob_close()</strong>
   * <strong>ibase_blob_create()</strong>
   * <strong>ibase_blob_import()</strong>


id: ibase_blob_cancel
type: function
doc:
<comment>Description:</comment>
  Cancel creating blob
  
  This function will discard a BLOB if it has not yet been closed by <strong>ibase_blob_close()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$blob_handle</strong>  A BLOB handle opened with <strong>ibase_blob_create()</strong>.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>ibase_blob_close()</strong>
   * <strong>ibase_blob_create()</strong>
   * <strong>ibase_blob_import()</strong>


id: ibase_blob_close
type: function
doc:
<comment>Description:</comment>
  Close blob
  
  This function closes a BLOB that has either been opened for reading by <strong>ibase_blob_open()</strong> or has
  been opened for writing by <strong>ibase_blob_create()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$blob_handle</strong>  A BLOB handle opened with <strong>ibase_blob_create()</strong> or <strong>ibase_blob_open()</strong>.

<comment>Return:</comment>
  <info>mixed</info>  If the BLOB was being read, this function returns <info>true</info> on success, if the BLOB was being
         written to, this function returns a string containing the BLOB id that has been assigned to
         it by the database. On failure, this function returns <info>false</info>.

<comment>See Also:</comment>
   * <strong>ibase_blob_cancel()</strong>
   * <strong>ibase_blob_open()</strong>


id: ibase_blob_create
type: function
doc:
<comment>Description:</comment>
  Create a new blob for adding data
  
  <strong>ibase_blob_create()</strong> creates a new BLOB for filling with data.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link_identifier</strong>  An InterBase link identifier. If omitted, the last opened link is
                              assumed.

<comment>Return:</comment>
  <info>resource|false</info>  Returns a BLOB handle for later use with <strong>ibase_blob_add()</strong> 或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>ibase_blob_add()</strong>
   * <strong>ibase_blob_cancel()</strong>
   * <strong>ibase_blob_close()</strong>
   * <strong>ibase_blob_import()</strong>


id: ibase_blob_echo
type: function
doc:
<comment>Description:</comment>
  Output blob contents to browser
  
  This function opens a BLOB for reading and sends its contents directly to standard output (the
  browser, in most cases).

<comment>Param:</comment>
  <info>resource</info>  <strong>$link_identifier</strong>  An InterBase link identifier. If omitted, the last opened link is
                              assumed.
  <info>string</info>    <strong>$blob_id</strong>          

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>ibase_blob_open()</strong>
   * <strong>ibase_blob_close()</strong>
   * <strong>ibase_blob_get()</strong>


id: ibase_blob_get
type: function
doc:
<comment>Description:</comment>
  Get len bytes data from open blob
  
  This function returns at most <strong>$len</strong> bytes from a BLOB that has been opened for reading by
  <strong>ibase_blob_open()</strong>.
  
  It is not possible to read from a BLOB that has been opened for writing by <strong>ibase_blob_create()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$blob_handle</strong>  A BLOB handle opened with <strong>ibase_blob_open()</strong>.
  <info>int</info>       <strong>$len</strong>          Size of returned data.

<comment>Return:</comment>
  <info>string</info>  Returns at most <strong>$len</strong> bytes from the BLOB, or <info>false</info> on failure.

<comment>See Also:</comment>
   * <strong>ibase_blob_open()</strong>
   * <strong>ibase_blob_close()</strong>
   * <strong>ibase_blob_echo()</strong>


id: ibase_blob_import
type: function
doc:
<comment>Description:</comment>
  Create blob, copy file in it, and close it
  
  This function creates a BLOB, reads an entire file into it, closes it and returns the assigned
  BLOB id.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link_identifier</strong>  An InterBase link identifier. If omitted, the last opened link is
                              assumed.
  <info>resource</info>  <strong>$file_handle</strong>      The file handle is a handle returned by <strong>fopen()</strong>.

<comment>Return:</comment>
  <info>string</info>  Returns the BLOB id on success, or <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>ibase_blob_add()</strong>
   * <strong>ibase_blob_cancel()</strong>
   * <strong>ibase_blob_close()</strong>
   * <strong>ibase_blob_create()</strong>


id: ibase_blob_info
type: function
doc:
<comment>Description:</comment>
  Return blob length and other useful info
  
  Returns the BLOB length and other useful information.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link_identifier</strong>  An InterBase link identifier. If omitted, the last opened link is
                              assumed.
  <info>string</info>    <strong>$blob_id</strong>          A BLOB id.

<comment>Return:</comment>
  <info>array</info>  Returns an array containing information about a BLOB. The information returned consists of
         the length of the BLOB, the number of segments it contains, the size of the largest
         segment, and whether it is a stream BLOB or a segmented BLOB.


id: ibase_blob_open
type: function
doc:
<comment>Description:</comment>
  Open blob for retrieving data parts
  
  Opens an existing BLOB for reading.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link_identifier</strong>  An InterBase link identifier. If omitted, the last opened link is
                              assumed.
  <info>string</info>    <strong>$blob_id</strong>          A BLOB id.

<comment>Return:</comment>
  <info>resource|false</info>  Returns a BLOB handle for later use with  <strong>ibase_blob_get()</strong> 或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>ibase_blob_close()</strong>
   * <strong>ibase_blob_echo()</strong>
   * <strong>ibase_blob_get()</strong>


id: ibase_close
type: function
doc:
<comment>Description:</comment>
  Close a connection to an InterBase database
  
  Closes the link to an InterBase database that's associated with a connection id returned from
  <strong>ibase_connect()</strong>. Default transaction on link is committed, other transactions are rolled back.

<comment>Param:</comment>
  <info>resource</info>  <strong>$connection_id</strong>  An InterBase link identifier returned from <strong>ibase_connect()</strong>. If omitted,
                            the last opened link is assumed.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>ibase_connect()</strong>
   * <strong>ibase_pconnect()</strong>


id: ibase_commit
type: function
doc:
<comment>Description:</comment>
  Commit a transaction
  
  Commits a transaction.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link_or_trans_identifier</strong>  If called without an argument, this function commits the
                                       default transaction of the default link. If the argument is a
                                       connection identifier, the default transaction of the
                                       corresponding connection will be committed. If the argument
                                       is a transaction identifier, the corresponding transaction
                                       will be committed.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: ibase_commit_ret
type: function
doc:
<comment>Description:</comment>
  Commit a transaction without closing it
  
  Commits a transaction without closing it.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link_or_trans_identifier</strong>  If called without an argument, this function commits the
                                       default transaction of the default link. If the argument is a
                                       connection identifier, the default transaction of the
                                       corresponding connection will be committed. If the argument
                                       is a transaction identifier, the corresponding transaction
                                       will be committed. The transaction context will be retained,
                                       so statements executed from within this transaction will not
                                       be invalidated.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: ibase_connect
type: function
doc:
<comment>Description:</comment>
  Open a connection to a database
  
  Establishes a connection to an Firebird/InterBase server.
  
  In case a second call is made to <strong>ibase_connect()</strong> with the same arguments, no new link will be
  established, but instead, the link identifier of the already opened link will be returned. The
  link to the server will be closed as soon as the execution of the script ends, unless it's closed
  earlier by explicitly calling <strong>ibase_close()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$database</strong>  The <strong>$database</strong> argument has to be a valid path to database file on the server it
                     resides on. If the server is not local, it must be prefixed with either
                     'hostname:' (TCP/IP), 'hostname/port:' (TCP/IP with interbase server on custom
                     TCP port), '//hostname/' (NetBEUI), depending on the connection protocol used.
  <info>string</info>  <strong>$username</strong>  The user name. Can be set with the <return>ibase.default_user</return> php.ini directive.
  <info>string</info>  <strong>$password</strong>  The password for <strong>$username</strong>. Can be set with the <return>ibase.default_password</return> php.ini
                     directive.
  <info>string</info>  <strong>$charset</strong>   <strong>$charset</strong> is the default character set for a database.
  <info>int</info>     <strong>$buffers</strong>   <strong>$buffers</strong> is the number of database buffers to allocate for the server-side
                     cache. If 0 or omitted, server chooses its own default.
  <info>int</info>     <strong>$dialect</strong>   <strong>$dialect</strong> selects the default SQL dialect for any statement executed within a
                     connection, and it defaults to the highest one supported by client libraries.
  <info>string</info>  <strong>$role</strong>      Functional only with InterBase 5 and up.
  <info>int</info>     <strong>$sync</strong>      

<comment>Return:</comment>
  <info>resource</info>  Returns an Firebird/InterBase link identifier on success, or <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>ibase_pconnect()</strong>
   * <strong>ibase_close()</strong>


id: ibase_db_info
type: function
doc:
<comment>Description:</comment>
  Request statistics about a database
  
  本函数还未编写文档，仅有参数列表。

<comment>Return:</comment>
  <info>string</info>  


id: ibase_delete_user
type: function
doc:
<comment>Description:</comment>
  Delete a user from a security database

<comment>Param:</comment>
  <info>resource</info>  <strong>$service_handle</strong>  The handle on the database server service.
  <info>string</info>    <strong>$user_name</strong>       The login name of the user you want to delete from the database.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>ibase_add_user()</strong>
   * <strong>ibase_modify_user()</strong>


id: ibase_drop_db
type: function
doc:
<comment>Description:</comment>
  Drops a database
  
  This functions drops a database that was opened by either <strong>ibase_connect()</strong> or <strong>ibase_pconnect()</strong>. The
  database is closed and deleted from the server.

<comment>Param:</comment>
  <info>resource</info>  <strong>$connection</strong>  An InterBase link identifier. If omitted, the last opened link is assumed.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>ibase_connect()</strong>
   * <strong>ibase_pconnect()</strong>


id: ibase_errcode
type: function
doc:
<comment>Description:</comment>
  Return an error code
  
  Returns the error code that resulted from the most recent InterBase function call.

<comment>Return:</comment>
  <info>int</info>  Returns the error code as an integer, or <info>false</info> if no error occurred.

<comment>See Also:</comment>
   * <strong>ibase_errmsg()</strong>


id: ibase_errmsg
type: function
doc:
<comment>Description:</comment>
  Return error messages
  
  Returns the error message that resulted from the most recent InterBase function call.

<comment>Return:</comment>
  <info>string</info>  Returns the error message as a string, or <info>false</info> if no error occurred.

<comment>See Also:</comment>
   * <strong>ibase_errcode()</strong>


id: ibase_execute
type: function
doc:
<comment>Description:</comment>
  Execute a previously prepared query
  
  Execute a query prepared by <strong>ibase_prepare()</strong>.
  
  This is a lot more effective than using <strong>ibase_query()</strong> if you are repeating a same kind of query
  several times with only some parameters changing.

<comment>Param:</comment>
  <info>resource</info>  <strong>$query</strong>   An InterBase query prepared by <strong>ibase_prepare()</strong>.
  <info>mixed</info>     <strong>$values</strong>  

<comment>Return:</comment>
  <info>resource</info>  If the query raises an error, returns <info>false</info>. If it is successful and there is a
            (possibly empty) result set (such as with a SELECT query), returns a result identifier.
            If the query was successful and there were no results, returns <info>true</info>.
            
            This function returns the number of rows affected by the query (if &gt; 0 and applicable
            to the statement type). A query that succeeded, but did not affect any rows (e.g. an
            UPDATE of a non-existent record) will return <info>true</info>.

<comment>See Also:</comment>
   * <strong>ibase_query()</strong>


id: ibase_fetch_assoc
type: function
doc:
<comment>Description:</comment>
  Fetch a result row from a query as an associative array
  
  Fetch a result row from a query as an associative array.
  
  <strong>ibase_fetch_assoc()</strong> fetches one row of data from the <strong>$result</strong>.  If two or more columns of the
  result have the same field names, the last column will take precedence. To access the other
  column(s) of the same name, you either need to access the result with numeric indices by using
  <strong>ibase_fetch_row()</strong> or use alias names in your query.

<comment>Param:</comment>
  <info>resource</info>  <strong>$result</strong>      The result handle.
  <info>int</info>       <strong>$fetch_flag</strong>  <strong>$fetch_flag</strong> is a combination of the constants <info>IBASE_TEXT</info> and <info>IBASE_UNIXTIME</info>
                         ORed together. Passing <info>IBASE_TEXT</info> will cause this function to return BLOB
                         contents instead of BLOB ids. Passing <info>IBASE_UNIXTIME</info> will cause this
                         function to return date/time values as Unix timestamps instead of as
                         formatted strings.

<comment>Return:</comment>
  <info>array</info>  Returns an associative array that corresponds to the fetched row. Subsequent calls will
         return the next row in the result set, or <info>false</info> if there are no more rows.

<comment>See Also:</comment>
   * <strong>ibase_fetch_row()</strong>
   * <strong>ibase_fetch_object()</strong>


id: ibase_fetch_object
type: function
doc:
<comment>Description:</comment>
  Get an object from a InterBase database
  
  Fetches a row as a pseudo-object from a given result identifier.
  
  Subsequent calls to <strong>ibase_fetch_object()</strong> return the next row in the result set.

<comment>Param:</comment>
  <info>resource</info>  <strong>$result_id</strong>   An InterBase result identifier obtained either by <strong>ibase_query()</strong> or
                         <strong>ibase_execute()</strong>.
  <info>int</info>       <strong>$fetch_flag</strong>  <strong>$fetch_flag</strong> is a combination of the constants <info>IBASE_TEXT</info> and <info>IBASE_UNIXTIME</info>
                         ORed together. Passing <info>IBASE_TEXT</info> will cause this function to return BLOB
                         contents instead of BLOB ids. Passing <info>IBASE_UNIXTIME</info> will cause this
                         function to return date/time values as Unix timestamps instead of as
                         formatted strings.

<comment>Return:</comment>
  <info>object</info>  Returns an object with the next row information, or <info>false</info> if there are no more rows.

<comment>See Also:</comment>
   * <strong>ibase_fetch_row()</strong>
   * <strong>ibase_fetch_assoc()</strong>


id: ibase_fetch_row
type: function
doc:
<comment>Description:</comment>
  Fetch a row from an InterBase database
  
  <strong>ibase_fetch_row()</strong> fetches one row of data from the given result set.
  
  Subsequent calls to <strong>ibase_fetch_row()</strong> return the next row in the result set, or <info>false</info> if there are
  no more rows.

<comment>Param:</comment>
  <info>resource</info>  <strong>$result_identifier</strong>  An InterBase result identifier.
  <info>int</info>       <strong>$fetch_flag</strong>         <strong>$fetch_flag</strong> is a combination of the constants <info>IBASE_TEXT</info> and
                                <info>IBASE_UNIXTIME</info> ORed together. Passing <info>IBASE_TEXT</info> will cause this
                                function to return BLOB contents instead of BLOB ids. Passing
                                <info>IBASE_UNIXTIME</info> will cause this function to return date/time values
                                as Unix timestamps instead of as formatted strings.

<comment>Return:</comment>
  <info>array</info>  Returns an array that corresponds to the fetched row, or <info>false</info> if there are no more rows.
         Each result column is stored in an array offset, starting at offset 0.

<comment>See Also:</comment>
   * <strong>ibase_fetch_assoc()</strong>
   * <strong>ibase_fetch_object()</strong>


id: ibase_field_info
type: function
doc:
<comment>Description:</comment>
  Get information about a field
  
  Returns an array with information about a field after a select query has been run.

<comment>Param:</comment>
  <info>resource</info>  <strong>$result</strong>        An InterBase result identifier.
  <info>int</info>       <strong>$field_number</strong>  Field offset.

<comment>Return:</comment>
  <info>array</info>  Returns an array with the following keys: <return>name</return>, <return>alias</return>, <return>relation</return>, <return>length</return> and <return>type</return>.

<comment>See Also:</comment>
   * <strong>ibase_num_fields()</strong>


id: ibase_free_event_handler
type: function
doc:
<comment>Description:</comment>
  Cancels a registered event handler
  
  This function causes the registered event handler specified by <strong>$event</strong> to be cancelled. The
  callback function will no longer be called for the events it was registered to handle.

<comment>Param:</comment>
  <info>resource</info>  <strong>$event</strong>  An event resource, created by <strong>ibase_set_event_handler()</strong>.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>ibase_set_event_handler()</strong>


id: ibase_free_query
type: function
doc:
<comment>Description:</comment>
  Free memory allocated by a prepared query
  
  Frees a prepared query.

<comment>Param:</comment>
  <info>resource</info>  <strong>$query</strong>  A query prepared with <strong>ibase_prepare()</strong>.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: ibase_free_result
type: function
doc:
<comment>Description:</comment>
  Free a result set
  
  Frees a result set.

<comment>Param:</comment>
  <info>resource</info>  <strong>$result_identifier</strong>  A result set created by <strong>ibase_query()</strong> or <strong>ibase_execute()</strong>.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: ibase_gen_id
type: function
doc:
<comment>Description:</comment>
  Increments the named generator and returns its new value
  
  本函数还未编写文档，仅有参数列表。

<comment>Return:</comment>
  <info>mixed</info>  Returns new generator value as integer, or as string if the value is too big.


id: ibase_maintain_db
type: function
doc:
<comment>Description:</comment>
  Execute a maintenance command on the database server
  
  本函数还未编写文档，仅有参数列表。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: ibase_modify_user
type: function
doc:
<comment>Description:</comment>
  Modify a user to a security database

<comment>Param:</comment>
  <info>resource</info>  <strong>$service_handle</strong>  The handle on the database server service.
  <info>string</info>    <strong>$user_name</strong>       The login name of the database user to modify.
  <info>string</info>    <strong>$password</strong>        The user's new password.
  <info>string</info>    <strong>$first_name</strong>      The user's new first name.
  <info>string</info>    <strong>$middle_name</strong>     The user's new middle name.
  <info>string</info>    <strong>$last_name</strong>       The user's new last name.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>ibase_add_user()</strong>
   * <strong>ibase_delete_user()</strong>


id: ibase_name_result
type: function
doc:
<comment>Description:</comment>
  Assigns a name to a result set
  
  This function assigns a name to a result set. This name can be used later in UPDATE|DELETE ...
  WHERE CURRENT OF <strong>$name</strong> statements.

<comment>Param:</comment>
  <info>resource</info>  <strong>$result</strong>  An InterBase result set.
  <info>string</info>    <strong>$name</strong>    The name to be assigned.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>ibase_prepare()</strong>
   * <strong>ibase_execute()</strong>


id: ibase_num_fields
type: function
doc:
<comment>Description:</comment>
  Get the number of fields in a result set
  
  Get the number of fields in a result set.

<comment>Param:</comment>
  <info>resource</info>  <strong>$result_id</strong>  An InterBase result identifier.

<comment>Return:</comment>
  <info>int</info>  Returns the number of fields as an integer.

<comment>See Also:</comment>
   * <strong>ibase_field_info()</strong>


id: ibase_num_params
type: function
doc:
<comment>Description:</comment>
  Return the number of parameters in a prepared query
  
  This function returns the number of parameters in the prepared query specified by <strong>$query</strong>. This is
  the number of binding arguments that must be present when calling <strong>ibase_execute()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$query</strong>  The prepared query handle.

<comment>Return:</comment>
  <info>int</info>  Returns the number of parameters as an integer.

<comment>See Also:</comment>
   * <strong>ibase_prepare()</strong>
   * <strong>ibase_param_info()</strong>


id: ibase_param_info
type: function
doc:
<comment>Description:</comment>
  Return information about a parameter in a prepared query
  
  Returns an array with information about a parameter after a query has been prepared.

<comment>Param:</comment>
  <info>resource</info>  <strong>$query</strong>         An InterBase prepared query handle.
  <info>int</info>       <strong>$param_number</strong>  Parameter offset.

<comment>Return:</comment>
  <info>array</info>  Returns an array with the following keys: <return>name</return>, <return>alias</return>, <return>relation</return>, <return>length</return> and <return>type</return>.

<comment>See Also:</comment>
   * <strong>ibase_field_info()</strong>
   * <strong>ibase_num_params()</strong>


id: ibase_pconnect
type: function
doc:
<comment>Description:</comment>
  Open a persistent connection to an InterBase database
  
  Opens a persistent connection to an InterBase database.
  
  <strong>ibase_pconnect()</strong> acts very much like <strong>ibase_connect()</strong> with two major differences.
  
  First, when connecting, the function will first try to find a (persistent) link that's already
  opened with the same parameters. If one is found, an identifier for it will be returned instead of
  opening a new connection.
  
  Second, the connection to the InterBase server will not be closed when the execution of the script
  ends. Instead, the link will remain open for future use (<strong>ibase_close()</strong> will not close links
  established by <strong>ibase_pconnect()</strong>). This type of link is therefore called 'persistent'.

<comment>Param:</comment>
  <info>string</info>  <strong>$database</strong>  The <strong>$database</strong> argument has to be a valid path to database file on the server it
                     resides on. If the server is not local, it must be prefixed with either
                     'hostname:' (TCP/IP), '//hostname/' (NetBEUI) or 'hostname@' (IPX/SPX),
                     depending on the connection protocol used.
  <info>string</info>  <strong>$username</strong>  The user name. Can be set with the <return>ibase.default_user</return> php.ini directive.
  <info>string</info>  <strong>$password</strong>  The password for <strong>$username</strong>. Can be set with the <return>ibase.default_password</return> php.ini
                     directive.
  <info>string</info>  <strong>$charset</strong>   <strong>$charset</strong> is the default character set for a database.
  <info>int</info>     <strong>$buffers</strong>   <strong>$buffers</strong> is the number of database buffers to allocate for the server-side
                     cache. If 0 or omitted, server chooses its own default.
  <info>int</info>     <strong>$dialect</strong>   <strong>$dialect</strong> selects the default SQL dialect for any statement executed within a
                     connection, and it defaults to the highest one supported by client libraries.
                     Functional only with InterBase 6 and up.
  <info>string</info>  <strong>$role</strong>      Functional only with InterBase 5 and up.
  <info>int</info>     <strong>$sync</strong>      

<comment>Return:</comment>
  <info>resource</info>  Returns an InterBase link identifier on success, or <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>ibase_close()</strong>
   * <strong>ibase_connect()</strong>


id: ibase_prepare
type: function
doc:
<comment>Description:</comment>
  Prepare a query for later binding of parameter placeholders and execution
  
  Prepare a query for later binding of parameter placeholders and execution (via <strong>ibase_execute()</strong>).

<comment>Param:</comment>
  <info>string</info>    <strong>$query</strong>            An InterBase query.
  <info>resource</info>  <strong>$link_identifier</strong>  An InterBase link identifier returned from <strong>ibase_connect()</strong>. If
                              omitted, the last opened link is assumed.
  <info>string</info>    <strong>$trans</strong>            An InterBase transaction handle the query should be associated with.
                              If omitted, the default transaction of the connection is assumed.

<comment>Return:</comment>
  <info>resource</info>  Returns a prepared query handle, or <info>false</info> on error.


id: ibase_query
type: function
doc:
<comment>Description:</comment>
  Execute a query on an InterBase database
  
  Performs a query on an InterBase database.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link_identifier</strong>  An InterBase link identifier. If omitted, the last opened link is
                              assumed.
  <info>string</info>    <strong>$query</strong>            An InterBase query.
  <info>int</info>       <strong>$bind_args</strong>        

<comment>Return:</comment>
  <info>resource</info>  If the query raises an error, returns <info>false</info>. If it is successful and there is a
            (possibly empty) result set (such as with a SELECT query), returns a result identifier.
            If the query was successful and there were no results, returns <info>true</info>.
            
            In PHP 5.0.0 and up, this function will return the number of rows affected by the query
            for INSERT, UPDATE and DELETE statements. In order to retain backward compatibility, it
            will return <info>true</info> for these statements if the query succeeded without affecting any rows.

<comment>See Also:</comment>
   * <strong>ibase_errmsg()</strong>
   * <strong>ibase_fetch_row()</strong>
   * <strong>ibase_fetch_object()</strong>
   * <strong>ibase_free_result()</strong>


id: ibase_restore
type: function
doc:
<comment>Description:</comment>
  Initiates a restore task in the service manager and returns immediately
  
  This function passes the arguments to the (remote) database server. There it starts a new restore
  process. Therefore you won't get any responses.

<comment>Param:</comment>
  <info>resource</info>  <strong>$service_handle</strong>  A previously opened connection to the database server.
  <info>string</info>    <strong>$source_file</strong>     The absolute path on the server where the backup file is located.
  <info>string</info>    <strong>$dest_db</strong>         The path to create the new database on the server. You can also use
                             database alias.
  <info>int</info>       <strong>$options</strong>         Additional options to pass to the database server for restore. The
                             <strong>$options</strong> parameter can be a combination  of the following constants:
                             <info>IBASE_RES_DEACTIVATE_IDX</info>, <info>IBASE_RES_NO_SHADOW</info>,  <info>IBASE_RES_NO_VALIDITY</info>,
                             <info>IBASE_RES_ONE_AT_A_TIME</info>, <info>IBASE_RES_REPLACE</info>, <info>IBASE_RES_CREATE</info>,
                             <info>IBASE_RES_USE_ALL_SPACE</info>, <info>IBASE_PRP_PAGE_BUFFERS</info>,
                             <info>IBASE_PRP_SWEEP_INTERVAL</info>, <info>IBASE_RES_CREATE</info>. Read the section about  for
                             further information.
  <info>bool</info>      <strong>$verbose</strong>         Since the restore process is done on the database server, you don't
                             have any chance to get its output. This argument is useless.

<comment>Return:</comment>
  <info>mixed</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。
         
         Since the restore process is done on the (remote) server, this function just passes the
         arguments to it. While the arguments are legal, you won't get <info>false</info>.

<comment>See Also:</comment>
   * <strong>ibase_backup()</strong>


id: ibase_rollback
type: function
doc:
<comment>Description:</comment>
  Roll back a transaction
  
  Rolls back a transaction.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link_or_trans_identifier</strong>  If called without an argument, this function rolls back the
                                       default transaction of the default link. If the argument is a
                                       connection identifier, the default transaction of the
                                       corresponding connection will be rolled back. If the argument
                                       is a transaction identifier, the corresponding transaction
                                       will be rolled back.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: ibase_rollback_ret
type: function
doc:
<comment>Description:</comment>
  Roll back a transaction without closing it
  
  Rolls back a transaction without closing it.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link_or_trans_identifier</strong>  If called without an argument, this function rolls back the
                                       default transaction of the default link. If the argument is a
                                       connection identifier, the default transaction of the
                                       corresponding connection will be rolled back. If the argument
                                       is a transaction identifier, the corresponding transaction
                                       will be rolled back. The transaction context will be
                                       retained, so statements executed from within this transaction
                                       will not be invalidated.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: ibase_server_info
type: function
doc:
<comment>Description:</comment>
  Request information about a database server

<comment>Param:</comment>
  <info>resource</info>  <strong>$service_handle</strong>  A previously created connection to the database server.
  <info>int</info>       <strong>$action</strong>          A valid constant.

<comment>Return:</comment>
  <info>string</info>  Returns mixed types depending on context.


id: ibase_service_attach
type: function
doc:
<comment>Description:</comment>
  Connect to the service manager

<comment>Param:</comment>
  <info>string</info>  <strong>$host</strong>          The name or ip address of the database host. You can define the port by
                         adding  '/' and port number. If no port is specified, port 3050 will be
                         used.
  <info>string</info>  <strong>$dba_username</strong>  The name of any valid user.
  <info>string</info>  <strong>$dba_password</strong>  The user's password.

<comment>Return:</comment>
  <info>resource|false</info>  Returns a Interbase / Firebird link identifier on success 或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>ibase_service_detach()</strong>


id: ibase_service_detach
type: function
doc:
<comment>Description:</comment>
  Disconnect from the service manager

<comment>Param:</comment>
  <info>resource</info>  <strong>$service_handle</strong>  A previously created connection to the database server.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: ibase_set_event_handler
type: function
doc:
<comment>Description:</comment>
  Register a callback function to be called when events are posted
  
  This function registers a PHP user function as event handler for the specified events.

<comment>Param:</comment>
  <info>callable</info>  <strong>$event_handler</strong>  The callback is called with the event name and the link resource as
                            arguments whenever one of the specified events is posted by the
                            database.
                            
                            The callback must return <info>false</info> if the event handler should be canceled.
                            Any other return value is ignored. This function accepts up to 15 event
                            arguments.
  <info>string</info>    <strong>$event_name</strong>     An event name.
  <info>string</info>    <strong>$event_names</strong>    At most 15 events allowed.

<comment>Return:</comment>
  <info>resource</info>  The return value is an event resource. This resource can be used to free the event
            handler using <strong>ibase_free_event_handler()</strong>.

<comment>See Also:</comment>
   * <strong>ibase_free_event_handler()</strong>
   * <strong>ibase_wait_event()</strong>


id: ibase_trans
type: function
doc:
<comment>Description:</comment>
  Begin a transaction
  
  Begins a transaction.
  
  The first call to <strong>ibase_trans()</strong> will not return the default transaction of a connection. All
  transactions started by <strong>ibase_trans()</strong> will be rolled back at the end of the script if they were
  not committed or rolled back by either <strong>ibase_commit()</strong> or <strong>ibase_rollback()</strong>.
  
  This function will accept multiple <strong>$trans_args</strong> and <strong>$link_identifier</strong> arguments. This allows
  transactions over multiple database connections, which are committed using a 2-phase commit
  algorithm. This means you can rely on the updates to either succeed in every database, or fail in
  every database. It does NOT mean you can use tables from different databases in the same query!
  
  If you use transactions over multiple databases, you will have to specify both the <strong>$link_id</strong> and
  <strong>$transaction_id</strong> in calls to <strong>ibase_query()</strong> and <strong>ibase_prepare()</strong>.

<comment>Param:</comment>
  <info>int</info>       <strong>$trans_args</strong>       <strong>$trans_args</strong> can be a combination of <info>IBASE_READ</info>, <info>IBASE_WRITE</info>,
                              <info>IBASE_COMMITTED</info>,  <info>IBASE_CONSISTENCY</info>, <info>IBASE_CONCURRENCY</info>,
                              <info>IBASE_REC_VERSION</info>,  <info>IBASE_REC_NO_VERSION</info>, <info>IBASE_WAIT</info> and
                              <info>IBASE_NOWAIT</info>.
  <info>resource</info>  <strong>$link_identifier</strong>  An InterBase link identifier. If omitted, the last opened link is
                              assumed.

<comment>Return:</comment>
  <info>resource</info>  Returns a transaction handle, or <info>false</info> on error.


id: ibase_wait_event
type: function
doc:
<comment>Description:</comment>
  Wait for an event to be posted by the database
  
  This function suspends execution of the script until one of the specified events is posted by the
  database. The name of the event that was posted is returned. This function accepts up to 15 event
  arguments.

<comment>Param:</comment>
  <info>string</info>  <strong>$event_name</strong>   The event name.
  <info>string</info>  <strong>$event_names</strong>  

<comment>Return:</comment>
  <info>string</info>  Returns the name of the event that was posted.

<comment>See Also:</comment>
   * <strong>ibase_set_event_handler()</strong>
   * <strong>ibase_free_event_handler()</strong>


id: iconv
type: function
doc:
<comment>Description:</comment>
  将字符串从一个字符编码转换到另一个字符编码
  
  将 <strong>$string</strong> 从 <strong>$from_encoding</strong> 转换到 <strong>$to_encoding</strong>。

<comment>Param:</comment>
  <info>string</info>  <strong>$from_encoding</strong>  用于解释 <strong>$string</strong> 的当前编码。
  <info>string</info>  <strong>$to_encoding</strong>    所需的结果编码。
                          
                          如果字符串 <return>//TRANSLIT</return> 追加到 <strong>$to_encoding</strong> ，然后将启用转写
                          （transliteration）功能。这意味着当字符不能被目标字符集所表示时，它可以通
                          过一个或多个形似的字符来近似表达。 如果追加字符串 <return>//IGNORE</return>，不能以目标字符
                          集表达的字符将被默默丢弃。否则，会导致 <info>E_NOTICE</info> 并返回 <info>false</info>。
                          
                          <return>//TRANSLIT</return> 运行细节高度依赖于系统的  iconv() 实现（参见 <info>ICONV_IMPL</info>）。 据
                          悉，某些系统上的实现会直接忽略 <return>//TRANSLIT</return>，所以转换也有可能失败，
                          <strong>$to_encoding</strong> 会是不合格的。
  <info>string</info>  <strong>$string</strong>         要转换的 <info>string</info>。

<comment>Return:</comment>
  <info>string|false</info>  返回转换后的字符串， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>mb_convert_encoding()</strong>
   * UConverter::transcode


id: iconv_get_encoding
type: function
doc:
<comment>Description:</comment>
  获取 iconv 扩展的内部配置变量
  
  获取 iconv 扩展的内部配置变量。

<comment>Param:</comment>
  <info>string</info>  <strong>$type</strong>  选项 <strong>$type</strong> 的值可以是： allinput_encodingoutput_encodinginternal_encoding

<comment>Return:</comment>
  <info>array|string|false</info>  成功时返回当前内部配置变量的值， 或者在失败时返回 <info>false</info>。
                      
                      如果省略了 <strong>$type</strong>，或者设置为 "all"，<strong>iconv_get_encoding()</strong> 返回包含所有这些变量
                      的数组。

<comment>See Also:</comment>
   * <strong>iconv_set_encoding()</strong>
   * <strong>ob_iconv_handler()</strong>


id: iconv_mime_decode
type: function
doc:
<comment>Description:</comment>
  解码一个MIME头字段
  
  解码一个<return>MIME</return>头字段.

<comment>Param:</comment>
  <info>string</info>       <strong>$string</strong>    编码头,是一个字符串.
  <info>int</info>          <strong>$mode</strong>      <strong>$模式</strong>决定了当<strong>iconv_mime_decode()</strong>遇到一个不规则的 <return>MIME</return>头字段时,对这个事件作
                          出的行为.你可以指定以下位掩码的任意组合. 可以在<strong>iconv_mime_decode()</strong>中使用的
                          位掩码值常量描述1ICONV_MIME_DECODE_STRICT 如果使用该位掩码,传入的头字段将
                          会完全一致的按照RFC2047的标准定义被解码. 这个选项默认是禁用的,因为有很多零
                          散的邮件用户代理商不遵守标准规范并且不生成正确的<return>MIME</return>头.
                          2ICONV_MIME_DECODE_CONTINUE_ON_ERROR 如果使用该位掩
                          码,<strong>iconv_mime_decode_headers()</strong> 将会试图忽略任何错误语法,并继续处理传入的头
                          字段.
  <info>string|null</info>  <strong>$encoding</strong>  可选的 <strong>$encoding</strong> 参数,用指定的字符集表示结果。如果省略或为 <info>null</info>，
                          iconv.internal_encoding 将会被默认使用。

<comment>Return:</comment>
  <info>string|false</info>  如果解码成功,返回一个被解码的<return>MIME</return>字段, 如果在解码过程中出现一个错误,将返回<info>false</info> .

<comment>See Also:</comment>
   * <strong>iconv_mime_decode_headers()</strong>
   * <strong>mb_decode_mimeheader()</strong>
   * <strong>imap_mime_header_decode()</strong>
   * <strong>imap_base64()</strong>
   * <strong>imap_qprint()</strong>


id: iconv_mime_decode_headers
type: function
doc:
<comment>Description:</comment>
  一次性解码多个 MIME 头字段
  
  一次性解码多个 <return>MIME</return> 头字段。

<comment>Param:</comment>
  <info>string</info>       <strong>$headers</strong>   编码过的头，是一个字符串。
  <info>int</info>          <strong>$mode</strong>      <strong>$mode</strong> 决定了 <strong>iconv_mime_decode_headers()</strong> 遇到畸形 <return>MIME</return> 头字段时的行为。 你
                          可以指定为以下位掩码的任意组合。 <strong>iconv_mime_decode_headers()</strong> 接受的位掩码
                          值常量描述1ICONV_MIME_DECODE_STRICT 如果设置了，给定的头将会以 RFC2047 定
                          义的标准完全一致。 这个选项默认禁用，因为大量有问题的邮件用户代理不遵循标
                          准并产生不正确的 <return>MIME</return> 头。 2ICONV_MIME_DECODE_CONTINUE_ON_ERROR 如果设置
                          了，<strong>iconv_mime_decode_headers()</strong> 尝试忽略任何语法错误并继续处理指定的头。
  <info>string|null</info>  <strong>$encoding</strong>  可选参数 <strong>$encoding</strong> 指定了字符集结果的表现。 如果省略或为 <info>null</info>，将使用
                          iconv.internal_encoding。

<comment>Return:</comment>
  <info>array|false</info>  成功时返回 <strong>$headers</strong> 指定的 <return>MIME</return> 头的整套关联数组，解码时出现错误则返回 <info>false</info>。
               
               返回元素的每个键代表独立字段名，相应的元素代表一个字段值。如果有多个同一名称的字段，
               <strong>iconv_mime_decode_headers()</strong> 自动将他们按出现顺序结合成数字索引的数组。请注意，标头名
               称不区分大小写。

<comment>See Also:</comment>
   * <strong>iconv_mime_decode()</strong>
   * <strong>mb_decode_mimeheader()</strong>
   * <strong>imap_mime_header_decode()</strong>
   * <strong>imap_base64()</strong>
   * <strong>imap_qprint()</strong>


id: iconv_mime_encode
type: function
doc:
<comment>Description:</comment>
  Composes a MIME header field
  
  Composes and returns a string that represents a valid <return>MIME</return> header field, which looks like the
  following:  In the above example, "Subject" is the field name and the portion that begins with
  "=?ISO-8859-1?..." is the field value.

<comment>Param:</comment>
  <info>string</info>  <strong>$field_name</strong>   The field name.
  <info>string</info>  <strong>$field_value</strong>  The field value.
  <info>array</info>   <strong>$options</strong>      You can control the behaviour of <strong>iconv_mime_encode()</strong> by specifying an
                        associative array that contains configuration items to the optional third
                        parameter <strong>$options</strong>. The items supported by <strong>iconv_mime_encode()</strong> are listed
                        below. Note that item names are treated case-sensitive. Configuration items
                        supported by <strong>iconv_mime_encode()</strong>ItemTypeDescriptionDefault
                        valueExamplescheme<info>string</info> Specifies the method to encode a field value by.
                        The value of this item may be either "B" or "Q", where "B" stands for <return>base64</return>
                        encoding scheme and "Q" stands for <return>quoted-printable</return> encoding scheme.
                        BBinput-charset<info>string</info> Specifies the character set in which the first
                        parameter <strong>$field_name</strong> and the second parameter <strong>$field_value</strong> are presented.
                        If not given, <strong>iconv_mime_encode()</strong> assumes those parameters are presented to
                        it in the iconv.internal_encoding ini setting.
                        iconv.internal_encodingISO-8859-1output-charset<info>string</info> Specifies the
                        character set to use to compose the <return>MIME</return> header.
                        iconv.internal_encodingUTF-8line-length<info>int</info> Specifies the maximum length of
                        the header lines. The resulting header is "folded" to a set of multiple
                        lines in case the resulting header field would be longer than the value of
                        this parameter, according to RFC2822 - Internet Message Format. If not
                        given, the length will be limited to 76 characters.
                        76996line-break-chars<info>string</info> Specifies the sequence of characters to append
                        to each line as an end-of-line sign when "folding" is performed on a long
                        header field. If not given, this defaults to "\r\n" (<return>CR</return> <return>LF</return>). Note that this
                        parameter is always treated as an ASCII string regardless of the value of
                        <return>input-charset</return>. \r\n\n

<comment>Return:</comment>
  <info>string|false</info>  Returns an encoded <return>MIME</return> field on success, or <info>false</info> if an error occurs during the
                encoding.

<comment>See Also:</comment>
   * <strong>imap_binary()</strong>
   * <strong>mb_encode_mimeheader()</strong>
   * <strong>imap_8bit()</strong>
   * <strong>quoted_printable_encode()</strong>


id: iconv_set_encoding
type: function
doc:
<comment>Description:</comment>
  为字符编码转换设定当前设置
  
  将 <strong>$type</strong> 设置的值从内部配置变量更改为 <strong>$encoding</strong>。

<comment>Param:</comment>
  <info>string</info>  <strong>$type</strong>      <strong>$type</strong> 的值可以是以下其中任意一个：
                     input_encodingoutput_encodinginternal_encoding
  <info>string</info>  <strong>$encoding</strong>  字符集。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>iconv_get_encoding()</strong>
   * <strong>ob_iconv_handler()</strong>


id: iconv_strlen
type: function
doc:
<comment>Description:</comment>
  返回字符串的字符数统计
  
  和 <strong>strlen()</strong> 不同的是，<strong>iconv_strlen()</strong> 统计了给定的字节序列 <strong>$string</strong> 中出现字符数的统计，基于指定的字
  符集，其产生的结果不一定和字符字节数相等。

<comment>Param:</comment>
  <info>string</info>       <strong>$string</strong>    该字符串。
  <info>string|null</info>  <strong>$encoding</strong>  如果 <strong>$encoding</strong> 参数省略或为 <info>null</info>，假设 <strong>$string</strong> 的编码为
                          iconv.internal_encoding。

<comment>Return:</comment>
  <info>int|false</info>  返回 <strong>$str</strong> 字符数的统计，是整型。如果编码期间出现错误，为 <info>false</info>。

<comment>See Also:</comment>
   * <strong>grapheme_strlen()</strong>
   * <strong>mb_strlen()</strong>
   * <strong>strlen()</strong>


id: iconv_strpos
type: function
doc:
<comment>Description:</comment>
  Finds position of first occurrence of a needle within a haystack
  
  Finds position of first occurrence of a <strong>$needle</strong> within a <strong>$haystack</strong>.
  
  In contrast to <strong>strpos()</strong>, the return value of <strong>iconv_strpos()</strong> is the number of characters that
  appear before the needle, rather than the offset in bytes to the position where the needle has
  been found. The characters are counted on the basis of the specified character set <strong>$encoding</strong>.

<comment>Param:</comment>
  <info>string</info>       <strong>$haystack</strong>  The entire string.
  <info>string</info>       <strong>$needle</strong>    The searched substring.
  <info>int</info>          <strong>$offset</strong>    The optional <strong>$offset</strong> parameter specifies the position from which the
                          search should be performed. If the offset is negative, it is counted from
                          the end of the string.
  <info>string|null</info>  <strong>$encoding</strong>  If <strong>$encoding</strong> parameter is omitted or <info>null</info>, <strong>$string</strong> are assumed to be
                          encoded in iconv.internal_encoding.

<comment>Return:</comment>
  <info>int|false</info>  Returns the numeric position of the first occurrence of <strong>$needle</strong> in <strong>$haystack</strong>.
             
             If <strong>$needle</strong> is not found, <strong>iconv_strpos()</strong> will return <info>false</info>.
             
             此函数可能返回布尔值
             <info>false</info>，但也可能返回等同于 <info>false</info> 的非布尔值。请阅读 布尔类型章节以获取更多信息。应使用
             ===
             运算符来测试此函数的返回值。

<comment>See Also:</comment>
   * <strong>strpos()</strong>
   * <strong>iconv_strrpos()</strong>
   * <strong>mb_strpos()</strong>


id: iconv_strrpos
type: function
doc:
<comment>Description:</comment>
  Finds the last occurrence of a needle within a haystack
  
  Finds the last occurrence of a <strong>$needle</strong> within a <strong>$haystack</strong>.
  
  In contrast to <strong>strrpos()</strong>, the return value of <strong>iconv_strrpos()</strong> is the number of characters that
  appear before the needle, rather than the offset in bytes to the position where the needle has
  been found. The characters are counted on the basis of the specified character set <strong>$encoding</strong>.

<comment>Param:</comment>
  <info>string</info>       <strong>$haystack</strong>  The entire string.
  <info>string</info>       <strong>$needle</strong>    The searched substring.
  <info>string|null</info>  <strong>$encoding</strong>  If <strong>$encoding</strong> parameter is omitted or <info>null</info>, <strong>$string</strong> are assumed to be
                          encoded in iconv.internal_encoding.

<comment>Return:</comment>
  <info>int|false</info>  Returns the numeric position of the last occurrence of <strong>$needle</strong> in <strong>$haystack</strong>.
             
             If <strong>$needle</strong> is not found, <strong>iconv_strrpos()</strong> will return <info>false</info>.
             
             此函数可能返回布尔值
             <info>false</info>，但也可能返回等同于 <info>false</info> 的非布尔值。请阅读 布尔类型章节以获取更多信息。应使用
             ===
             运算符来测试此函数的返回值。

<comment>See Also:</comment>
   * <strong>strrpos()</strong>
   * <strong>iconv_strpos()</strong>
   * <strong>mb_strrpos()</strong>


id: iconv_substr
type: function
doc:
<comment>Description:</comment>
  截取字符串的部分
  
  根据 <strong>$offset</strong> 和 <strong>$length</strong> 参数指定 <strong>$string</strong> 截取的部分。

<comment>Param:</comment>
  <info>string</info>       <strong>$string</strong>    原始字符串。
  <info>int</info>          <strong>$offset</strong>    如果 <strong>$offset</strong> 是非负数，<strong>iconv_substr()</strong> 从 <strong>$string</strong> 开头第 <strong>$offset</strong> 个字符开始
                          截出部分，从 0 开始计数。
                          
                          如果 <strong>$offset</strong> 是负数，<strong>iconv_substr()</strong> 从  <strong>$string</strong> 末尾向前 <strong>$offset</strong> 个字符开
                          始截取。
  <info>int|null</info>     <strong>$length</strong>    如果指定了 <strong>$length</strong> 并且是正数，返回的值从 <strong>$offset</strong> 截取部分，最多包含
                          <strong>$length</strong> 个字符（取决于 <strong>$string</strong> 的长度）。
                          
                          如果传入了负数的 <strong>$length</strong>， <strong>iconv_substr()</strong> 将从第 <strong>$offset</strong> 个字符到离末尾
                          <strong>$length</strong> 个字符截出 <strong>$string</strong> 的部分。 如果 <strong>$offset</strong> 也是负数，则开始位置计算
                          规则的解释见以上。
  <info>string|null</info>  <strong>$encoding</strong>  如果省略了参数 <strong>$encoding</strong>，<strong>$string</strong> 的编码被认定为 iconv.internal_encoding。
                          
                          注意，<strong>$offset</strong> 和 <strong>$length</strong> 参数总是被认为字符表现的偏移，基于 <strong>$encoding</strong> 检测
                          到的字符集进行统计计算，而相对应的 <strong>substr()</strong> 则是基于字节的位移来计算。

<comment>Return:</comment>
  <info>string|false</info>  返回 <strong>$offset</strong> 和 <strong>$length</strong> 参数指定的 <strong>$string</strong> 的部分。
                
                如果 <strong>$string</strong> 比 <strong>$offset</strong> 字符数更短，将会返回 <info>false</info>。 如果 <strong>$string</strong> 是 <strong>$offset</strong> 个字符
                的长度，将返回空字符串。

<comment>See Also:</comment>
   * <strong>substr()</strong>
   * <strong>mb_substr()</strong>
   * <strong>mb_strcut()</strong>


id: idate
type: function
doc:
<comment>Description:</comment>
  将本地日期/时间格式化为整数
  
  使用明确的 int 类型 <strong>$timestamp</strong> 或者当前本地时间（如果没有明确时间戳），根据明确的格式化字符串返回
  格式化后的数字。换句话说，<strong>$timestamp</strong> 是可选的，默认值是 <strong>time()</strong> 的值。
  
  跟 <strong>date()</strong> 不同，<strong>idate()</strong> 只接受一个字符作为 <strong>$format</strong> 的参数。

<comment>Param:</comment>
  <info>string</info>    <strong>$format</strong>     <strong>$format</strong> 参数字符串仅识别以下字符<strong>$format</strong> 字符说明<return>B</return>Swatch Beat/互联网时间<return>d</return>月份
                        中的第几天<return>h</return>小时（12 小时制）<return>H</return>小时（24 小时制）<return>i</return>分钟<return>I</return>（大写 i）如果启用夏令时
                        则返回 <return>1</return>，否则返回 <return>0</return><return>L</return>（大写 l）如果是闰年则返回 <return>1</return>，否则返回 <return>0</return><return>m</return>月份的数字
                        <return>N</return>ISO-8601 格式的周几（<return>1</return> 表示周一到 <return>7</return> 表示周日）<return>o</return>ISO-8601 格式的年份（4位）
                        <return>s</return>秒数<return>t</return>本月的总天数<return>U</return>自 Unix 纪元（January 1 1970 00:00:00 GMT）起的秒数——这和
                        <strong>time()</strong> 相同<return>w</return>周几（<return>0</return> 是周日）<return>W</return>ISO-8601 格式的年份中第几个星期，每星期从星期一
                        开始<return>y</return>年份（1 或 2 位数字——见下面说明）<return>Y</return>年份（4 位数字）<return>z</return>年份中的第几天<return>Z</return>以秒
                        为单位的时差
  <info>int|null</info>  <strong>$timestamp</strong>  可选的 <strong>$timestamp</strong> 参数是一个 <info>int</info> 的 Unix
                        时间戳，如未指定或是 <info>null</info>，参数值默认为当前本地时间。也就是说，其值默认为
                        <strong>time()</strong> 的返回值。

<comment>Return:</comment>
  <info>int|false</info>  成功时返回 <info>int</info>， 或者在失败时返回 <info>false</info>。
             
             由于 <strong>idate()</strong> 始终返回不以“0”开头的 <info>int</info>，因此 <strong>idate()</strong> 返回的数字可能位数要比期望的小。查
             看以下示例。

<comment>See Also:</comment>
   * DateTimeInterface::format
   * <strong>date()</strong>
   * <strong>getdate()</strong>
   * <strong>time()</strong>


id: idn_to_ascii
type: function
doc:
<comment>Description:</comment>
  将域名转换为 IDNA ASCII 格式 
  
  过程化风格
  
  该函数可以将 Unicode 域名转换为 IDNA ASCII 兼容格式。

<comment>Param:</comment>
  <info>string</info>  <strong>$domain</strong>     要转换的域，必须使用 UTF-8 编码。
  <info>int</info>     <strong>$flags</strong>      转换选项 — IDNA_* 开头的常量（除 IDNA_ERROR_* 开头的常量）。
  <info>int</info>     <strong>$variant</strong>    对于 IDNA 2003 是 <info>INTL_IDNA_VARIANT_2003</info> (自 PHP 7.2.0 起已弃用)， 对于 UTS
                      #46 是 <info>INTL_IDNA_VARIANT_UTS46</info> (仅 ICU 4.6 起可用)。
  <info>array</info>   <strong>$idna_info</strong>  仅当 <info>INTL_IDNA_VARIANT_UTS46</info> 用于 <strong>$variant</strong> 时，才可以使用该参数。 在这种情况
                      下，它将用这些键组成的数组来填充： <return>'result'</return> 键，转换结果（有可能是一个非法结
                      果）； <return>'isTransitionalDifferent'</return> 键，布尔值，指示使用 UTS #46 的过滤机制是否会
                      改变结果； <return>'errors'</return> 键，是 IDNA_ERROR_* 常量集里一个常量对应的 <info>int</info> 。

<comment>Return:</comment>
  <info>string|false</info>  IDNA ASCII 兼容格式编码的域名，  或者在失败时返回 <info>false</info>

<comment>See Also:</comment>
   * <strong>idn_to_utf8()</strong>


id: idn_to_utf8
type: function
doc:
<comment>Description:</comment>
  将域名从 IDNA ASCII 转换为 Unicode
  
  过程化风格
  
  该函数将 Unicode 域名从 IDNA ASCII 兼容格式转换为 纯 Unicode（UTF-8 编码）。

<comment>Param:</comment>
  <info>string</info>  <strong>$domain</strong>     要转换的 IDNA ASCII 兼容格式的域名。
  <info>int</info>     <strong>$flags</strong>      转换选项 — IDNA_* 开头的常量（除 IDNA_ERROR_* 开头的常量）。
  <info>int</info>     <strong>$variant</strong>    对于 IDNA 2003 是 <info>INTL_IDNA_VARIANT_2003</info> (自 PHP 7.2.0 起已弃用)， 对于 UTS
                      #46 是 <info>INTL_IDNA_VARIANT_UTS46</info> (仅 ICU 4.6 起可用)。
  <info>array</info>   <strong>$idna_info</strong>  仅当 <info>INTL_IDNA_VARIANT_UTS46</info> 用于 <strong>$variant</strong> 时，才可以使用该参数。 在这种情况
                      下，它将用这些键组成的数组来填充： <return>'result'</return> 键，转换结果（有可能是一个非法结
                      果）； <return>'isTransitionalDifferent'</return> 键，布尔值，指示使用 UTS #46 的过滤机制是否会
                      改变结果； <return>'errors'</return> 键，是 IDNA_ERROR_* 常量集里一个常量对应的 <info>int</info> 。

<comment>Return:</comment>
  <info>string|false</info>  UTF-8 编码的 Unicode 域名，  或者在失败时返回 <info>false</info>

<comment>See Also:</comment>
   * <strong>idn_to_ascii()</strong>


id: igbinary_serialize
type: function
doc:
<comment>Description:</comment>
  Generates a compact, storable binary representation of a value
  
  Generates a storable representation of a value.
  
  This is useful for storing or passing PHP values around without losing their type and structure.
  
  To make the serialized string into a PHP value again, <strong>igbinary_unserialize()</strong> can be used.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  The value to be serialized. <strong>igbinary_serialize()</strong> handles all types, except the
                 <info>resource</info>-type and some <info>object</info>s (see note below). Even <info>array</info>s that contain
                 references to itself can be processed by <strong>igbinary_serialize()</strong>. Circular references
                 inside the <info>array</info> or <info>object</info> that is being serializend will also be stored. Any other
                 reference will be lost.
                 
                 When serializing objects, igbinary will attempt to call the member functions
                 __serialize() or __sleep() prior to serialization. This is to allow the object to
                 do any last minute clean-up, etc. prior to being serialized. Likewise, when the
                 object is restored using <strong>igbinary_unserialize()</strong> the __unserialize() or __wakeup()
                 member function is called.
                 
                 Private members of <info>object</info>s have the class name prepended to the member name;
                 protected members have a <return>'*'</return> prepended to the member name. These prepended values
                 have null bytes on either side.

<comment>Return:</comment>
  <info>string|false</info>  Returns a string containing a byte-stream representation of <strong>$value</strong> that can be
                stored anywhere.
                
                Note that this is a binary string which can include any byte value, and needs to be
                stored and handled as such. For example, <strong>igbinary_serialize()</strong> output should
                generally be stored in a <return>BLOB</return> field in a database, rather than a <return>CHAR</return> or <return>TEXT</return> field.

<comment>See Also:</comment>
   * <strong>serialize()</strong>
   * <strong>igbinary_unserialize()</strong>
   * <strong>var_export()</strong>
   * <strong>json_encode()</strong>
   * Serializing Objects
   * __sleep()
   * __wakeup()
   * __serialize()
   * __unserialize()


id: igbinary_unserialize
type: function
doc:
<comment>Description:</comment>
  Creates a PHP value from a stored representation from igbinary_serialize
    
  
  <strong>igbinary_unserialize()</strong> takes a single serialized variable from <strong>igbinary_serialize()</strong> and converts
  it back into a PHP value.
  
  Untrusted user input must not be passed to <strong>igbinary_unserialize()</strong>. Unserialization can result in
  code being loaded and executed due to object instantiation and autoloading, and a malicious user
  may be able to exploit this. Instead a safe, standard data interchange format such as JSON (via
  <strong>json_decode()</strong> and <strong>json_encode()</strong>) should be used, if serialized data needs to be passed to a
  client.
  
  If there is the need to unserialize externally-stored serialized data, <strong>hash_hmac()</strong> can be used for
  data validation. It is important to ensure that nobody has tampered with the data.
  
  The igbinary serialization format does not provide a way to distinguish between different
  reference groups for the same value. All PHP references to a given value as treated as part of the
  same reference group when unserialized, even if they were parts of difference reference groups
  when serialized.

<comment>Param:</comment>
  <info>string</info>  <strong>$str</strong>  The serialized string generated by <strong>igbinary_serialize()</strong>.
                
                If the value being unserialized is an <info>object</info>, after successfully reconstructing the
                object igbinary will automatically attempt to call the __unserialize() or __wakeup()
                methods (if one exists).
                
                unserialize_callback_func directive It is possible to set a callback function which
                will be called, if an undefined class should be instantiated during unserializing.
                (to prevent getting an incomplete <info>object</info> <return>__PHP_Incomplete_Class</return>.) The php.ini,
                <strong>ini_set()</strong> or .htaccess can be used to define unserialize_callback_func. Everytime an
                undefined class should be instantiated, it will be called. To disable this feature
                this setting should be emptied.
                
                It is possible to set a callback function which will be called, if an undefined
                class should be instantiated during unserializing. (to prevent getting an incomplete
                <info>object</info> <return>__PHP_Incomplete_Class</return>.) The php.ini, <strong>ini_set()</strong> or .htaccess can be used to
                define unserialize_callback_func. Everytime an undefined class should be
                instantiated, it will be called. To disable this feature this setting should be
                emptied.

<comment>Return:</comment>
  <info>mixed</info>  The converted value is returned, and can be a <info>bool</info>, <info>int</info>, <info>float</info>, <info>string</info>, <info>array</info>, <info>object</info>, or
         <info>null</info>.
         
         In case the passed string is not unserializeable, <info>false</info> is returned and <info>E_NOTICE</info> or
         <info>E_WARNING</info> is issued.

<comment>See Also:</comment>
   * <strong>unserialize()</strong>
   * <strong>json_encode()</strong>
   * <strong>json_decode()</strong>
   * <strong>hash_hmac()</strong>
   * <strong>igbinary_serialize()</strong>
   * Autoloading Classes
   * unserialize_callback_func
   * __wakeup()
   * __serialize()
   * __unserialize()


id: ignore_user_abort
type: function
doc:
<comment>Description:</comment>
  设置客户端断开连接时是否中断脚本的执行
  
  设置客户端断开连接时是否中断脚本的执行
  
  PHP 以命令行脚本执行时，当脚本终端结束，脚本不会被立即中止，除非设置 <strong>$enable</strong>为 <info>true</info>，否则脚本输出
  任意字符时会被中止。

<comment>Param:</comment>
  <info>bool|null</info>  <strong>$enable</strong>  如果设置了该值且不为 <info>null</info>，函数会设置 ignore_user_abort ini 为 <strong>$enable</strong>。否则，
                      函数不会改变设置，仅会返回之前的设置。

<comment>Return:</comment>
  <info>int</info>  以整型返回之前的设置

<comment>See Also:</comment>
   * <strong>connection_aborted()</strong>
   * <strong>connection_status()</strong>
   * Connection Handling
     关于PHP连接处理的完整描述。
    


id: image2wbmp
type: function
doc:
<comment>Description:</comment>
  输出图象到浏览器或文件。
  
  <strong>image2wbmp()</strong> 输出或保存为指定 <strong>$image</strong> 的 WBMP 版本。

<comment>Param:</comment>
  <info>resource</info>  <strong>$image</strong>       图像资源，由某个图像创建函数返回，比如 <strong>imagecreatetruecolor()</strong>。
  <info>string</info>    <strong>$filename</strong>    保存文件的路径。如果没有指定，将直接输出原始图片流。
  <info>int</info>       <strong>$foreground</strong>  使用此参数从 <strong>imagecolorallocate()</strong> 获得的标识符来设置前景色。默认前景色为黑
                         色。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。
        
        如果 libgd 输出图像失败，函数会返回 <info>true</info>。

<comment>See Also:</comment>
   * <strong>imagewbmp()</strong>


id: image_type_to_extension
type: function
doc:
<comment>Description:</comment>
  取得图像类型的文件后缀
  
  根据给定的常量 <return>IMAGETYPE_XXX</return> 返回后缀名。

<comment>Param:</comment>
  <info>int</info>   <strong>$image_type</strong>   <return>IMAGETYPE_XXX</return> 系列常量之一。
  <info>bool</info>  <strong>$include_dot</strong>  是否在后缀名前加一个点。默认是 <info>true</info>。

<comment>Return:</comment>
  <info>string|false</info>  根据指定的图像类型返回对应的后缀名， 或者在失败时返回 <info>false</info>。


id: image_type_to_mime_type
type: function
doc:
<comment>Description:</comment>
  取得 getimagesize、exif_read_data、exif_thumbnail、exif_imagetype 所返回的图像类型的 MIME 类型
  
  <strong>image_type_to_mime_type()</strong> 函数将确定 IMAGETYPE 常量的 MIME 类型。

<comment>Param:</comment>
  <info>int</info>  <strong>$image_type</strong>  <return>IMAGETYPE_XXX</return> 常量之一。

<comment>Return:</comment>
  <info>string</info>  返回值如下： 返回值常量<strong>$image_type</strong>返回值
          <info>IMAGETYPE_GIF</info><return>image/gif</return><info>IMAGETYPE_JPEG</info><return>image/jpeg</return><info>IMAGETYPE_PNG</info><return>image/png</return><info>IMAGETYPE_SWF</info><return>application/x-shockwave-flash</return><info>IMAGETYPE_PSD</info><return>image/psd</return><info>IMAGETYPE_BMP</info><return>image/bmp</return><info>IMAGETYPE_TIFF_II</info>（小
          端字节顺序）<return>image/tiff</return><info>IMAGETYPE_TIFF_MM</info>（大端字节顺序）
          <return>image/tiff</return><info>IMAGETYPE_JPC</info><return>application/octet-stream</return><info>IMAGETYPE_JP2</info><return>image/jp2</return><info>IMAGETYPE_JPX</info><return>application/octet-stream</return><info>IMAGETYPE_JB2</info><return>application/octet-stream</return><info>IMAGETYPE_SWC</info><return>application/x-shockwave-flash</return><info>IMAGETYPE_IFF</info><return>image/iff</return><info>IMAGETYPE_WBMP</info><return>image/vnd.wap.wbmp</return><info>IMAGETYPE_XBM</info><return>image/xbm</return><info>IMAGETYPE_ICO</info><return>image/vnd.microsoft.icon</return><info>IMAGETYPE_WEBP</info><return>image/webp</return><info>IMAGETYPE_AVIF</info><return>image/avif</return>

<comment>See Also:</comment>
   * <strong>getimagesize()</strong>
   * <strong>exif_imagetype()</strong>
   * <strong>exif_read_data()</strong>
   * <strong>exif_thumbnail()</strong>


id: imageaffine
type: function
doc:
<comment>Description:</comment>
  返回经过仿射变换后的图像，剪切区域可选
  
  本函数还未编写文档，仅有参数列表。

<comment>Param:</comment>
  <info>GdImage</info>     <strong>$image</strong>   由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                       <class>GdImage</class> 对象。
  <info>array</info>       <strong>$affine</strong>  数组，其中键为 0 至 5 的数字。
  <info>array|null</info>  <strong>$clip</strong>    数组，其中键为 "x"，"y"，"width" 和 "height"；或者 <info>null</info>。

<comment>Return:</comment>
  <info>GdImage|false</info>  成功则返回仿射变换后的图像对象， 或者在失败时返回 <info>false</info>。


id: imageaffinematrixconcat
type: function
doc:
<comment>Description:</comment>
  Concatenate two affine transformation matrices
  
  Returns the concatenation of two affine transformation matrices, what is useful if multiple
  transformations should be applied to the same image in one go.

<comment>Param:</comment>
  <info>array</info>  <strong>$matrix1</strong>  An affine transformation matrix (an array with keys <return>0</return> to <return>5</return> and float values).
  <info>array</info>  <strong>$matrix2</strong>  An affine transformation matrix (an array with keys <return>0</return> to <return>5</return> and float values).

<comment>Return:</comment>
  <info>array|false</info>  An affine transformation matrix (an array with keys <return>0</return> to <return>5</return> and float values) 或者在失
               败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>imageaffine()</strong>
   * <strong>imageaffinematrixget()</strong>


id: imageaffinematrixget
type: function
doc:
<comment>Description:</comment>
  Get an affine transformation matrix
  
  Returns an affine transformation matrix.

<comment>Param:</comment>
  <info>int</info>          <strong>$type</strong>     One of the <info>IMG_AFFINE_*</info> constants.
  <info>array|float</info>  <strong>$options</strong>  If <strong>$type</strong> is <info>IMG_AFFINE_TRANSLATE</info> or <info>IMG_AFFINE_SCALE</info>, <strong>$options</strong> has to be an
                         <info>array</info> with keys <return>x</return> and <return>y</return>, both having <info>float</info> values.
                         
                         If <strong>$type</strong> is <info>IMG_AFFINE_ROTATE</info>, <info>IMG_AFFINE_SHEAR_HORIZONTAL</info> or
                         <info>IMG_AFFINE_SHEAR_VERTICAL</info>, <strong>$options</strong> has to be a <info>float</info> specifying the angle.

<comment>Return:</comment>
  <info>array|false</info>  An affine transformation matrix (an array with keys <return>0</return> to <return>5</return> and float values) 或者在失
               败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>imageaffine()</strong>
   * <strong>imageaffinematrixconcat()</strong>


id: imagealphablending
type: function
doc:
<comment>Description:</comment>
  设定图像的混色模式
  
  <strong>imagealphablending()</strong> 允许在真彩色图像上使用两种不同的绘画模式。在混色（blending）模式下，alpha 通
  道色彩成分提供给所有的绘画函数，例如 <strong>imagesetpixel()</strong> 决定底层的颜色应在何种程度上被允许照射透过。
  作为结果，GD 自动将该点现有的颜色和画笔颜色混合，并将结果储存在图像中。结果的像素是不透明的。在非
  混色模式下，画笔颜色连同其 alpha 通道信息一起被拷贝，替换掉目标像素。混色模式在画调色板图像时不可
  用。如果 <strong>$blendmode</strong> 为 <info>true</info>，则启用混色模式，否则关闭。成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>   由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                    <class>GdImage</class> 对象。
  <info>bool</info>     <strong>$enable</strong>  是否启用混合模式。在真彩色图像上，默认值为 <info>true</info>，否则默认值为 <info>false</info>

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: imageantialias
type: function
doc:
<comment>Description:</comment>
  是否使用抗锯齿（antialias）功能
  
  对线段和多边形启用快速画图抗锯齿方法。不支持 alpha 部分。使用直接混色操作。仅用于真彩色图像。
  
  不支持线宽和风格。
  
  使用抗锯齿和透明背景色可能出现未预期的结果。混色方法把背景色当成任何其它颜色使用。缺乏 alpha 部分
  的支持导致不允许基于 alpha 抗锯齿方法。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>   由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                    <class>GdImage</class> 对象。
  <info>bool</info>     <strong>$enable</strong>  是否启用抗锯齿。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagecreatetruecolor()</strong>


id: imagearc
type: function
doc:
<comment>Description:</comment>
  画弧线
  
  <strong>imagearc()</strong> 绘制以指定坐标为中心的弧线。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>        由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                         <class>GdImage</class> 对象。
  <info>int</info>      <strong>$center_x</strong>     中心的 x 坐标。
  <info>int</info>      <strong>$center_y</strong>     中心的 y 坐标。
  <info>int</info>      <strong>$width</strong>        弧宽。
  <info>int</info>      <strong>$height</strong>       弧高。
  <info>int</info>      <strong>$start_angle</strong>  弧线起始角度，以度为单位。
  <info>int</info>      <strong>$end_angle</strong>    弧线结束角度，以度为单位。0° 位于三点钟位置，顺时针绘制弧线。
  <info>int</info>      <strong>$color</strong>        颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagefilledarc()</strong>
   * <strong>imageellipse()</strong>
   * <strong>imagefilledellipse()</strong>


id: imageavif
type: function
doc:
<comment>Description:</comment>
  输出图象到浏览器或文件。
  
  Outputs or saves a AVIF Raster image from the given <strong>$image</strong>.

<comment>Param:</comment>
  <info>GdImage</info>               <strong>$image</strong>    由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                                  <class>GdImage</class> 对象。
  <info>resource|string|null</info>  <strong>$file</strong>     文件保存的路径或者已打开的流资源（此方法返回后自动关闭该流资源），
                                  如果未设置或为 <info>null</info>，将会直接输出原始图象流。
  <info>int</info>                   <strong>$quality</strong>  <strong>$quality</strong> is optional, and ranges from 0 (worst quality, smaller
                                  file) to 100 (best quality, larger file). If <return>-1</return> is provided, the
                                  default value <return>30</return> is used.
  <info>int</info>                   <strong>$speed</strong>    <strong>$speed</strong> is optional, and ranges from 0 (slow, smaller file) to 10
                                  (fast, larger file). If <return>-1</return> is provided, the default value <return>6</return> is
                                  used.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。
        
        如果 libgd 输出图像失败，函数会返回 <info>true</info>。

<comment>See Also:</comment>
   * <strong>imagepng()</strong>
   * <strong>imagewbmp()</strong>
   * <strong>imagejpeg()</strong>
   * <strong>imagetypes()</strong>


id: imagebmp
type: function
doc:
<comment>Description:</comment>
  Output a BMP image to browser or file
  
  Outputs or saves a BMP version of the given <strong>$image</strong>.

<comment>Param:</comment>
  <info>GdImage</info>               <strong>$image</strong>       由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                                     <class>GdImage</class> 对象。
  <info>resource|string|null</info>  <strong>$file</strong>        文件保存的路径或者已打开的流资源（此方法返回后自动关闭该流资
                                     源），如果未设置或为 <info>null</info>，将会直接输出原始图象流。
                                     
                                     <info>null</info> is invalid if the <strong>$compressed</strong> arguments is not used.
  <info>bool</info>                  <strong>$compressed</strong>  Whether the BMP should be compressed with run-length encoding
                                     (RLE), or not.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。
        
        如果 libgd 输出图像失败，函数会返回 <info>true</info>。


id: imagechar
type: function
doc:
<comment>Description:</comment>
  水平地绘制一个字符
  
  <strong>imagechar()</strong> 将 <strong>$char</strong> 的首个字符绘制在 <strong>$image</strong> 标识的图像中，其左上角位于 <strong>$x</strong>，<strong>$y</strong>（图像左上角为 0,
  0），颜色为 <strong>$color</strong>。

<comment>Param:</comment>
  <info>GdImage</info>     <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                      <class>GdImage</class> 对象。
  <info>GdFont|int</info>  <strong>$font</strong>   取值对于内建的 latin2 编码字体可以是：1、2、3、4、5(更高的数字对应更大的字
                      体)，
                      或是通过 <strong>imageloadfont()</strong> 返回的 <class>GdFont</class> 实例。
  <info>int</info>         <strong>$x</strong>      起点的 x 坐标。
  <info>int</info>         <strong>$y</strong>      起点的 y 坐标。
  <info>string</info>      <strong>$char</strong>   要绘制的字符。
  <info>int</info>         <strong>$color</strong>  颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagecharup()</strong>
   * <strong>imageloadfont()</strong>


id: imagecharup
type: function
doc:
<comment>Description:</comment>
  垂直地绘制一个字符
  
  在指定 <strong>$image</strong> 的特定坐标处竖直绘制字符 <strong>$char</strong>。

<comment>Param:</comment>
  <info>GdImage</info>     <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                      <class>GdImage</class> 对象。
  <info>GdFont|int</info>  <strong>$font</strong>   取值对于内建的 latin2 编码字体可以是：1、2、3、4、5(更高的数字对应更大的字
                      体)，
                      或是通过 <strong>imageloadfont()</strong> 返回的 <class>GdFont</class> 实例。
  <info>int</info>         <strong>$x</strong>      起点的 x 坐标。
  <info>int</info>         <strong>$y</strong>      起点的 y 坐标。
  <info>string</info>      <strong>$char</strong>   要绘制的字符。
  <info>int</info>         <strong>$color</strong>  颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagechar()</strong>
   * <strong>imageloadfont()</strong>


id: imagecolorallocate
type: function
doc:
<comment>Description:</comment>
  为图像分配颜色
  
  返回颜色标识符，表示由指定 RGB 成分组成的颜色。
  
  必须调用 <strong>imagecolorallocate()</strong> 创建要在 <strong>$image</strong> 表示的图像中使用的每种颜色。
  
  第一次调用 <strong>imagecolorallocate()</strong> 会对基于调色板的图像填充背景色——使用 <strong>imagecreate()</strong> 建立的图像。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$red</strong>    红色成分的值。
  <info>int</info>      <strong>$green</strong>  绿色成分的值。
  <info>int</info>      <strong>$blue</strong>   蓝色成分的值。

<comment>Return:</comment>
  <info>int|false</info>  颜色标识符，如果分配失败，则为 <info>false</info>。
             
             此函数可能返回布尔值
             <info>false</info>，但也可能返回等同于 <info>false</info> 的非布尔值。请阅读 布尔类型章节以获取更多信息。应使用
             ===
             运算符来测试此函数的返回值。

<comment>See Also:</comment>
   * <strong>imagecolorallocatealpha()</strong>
   * <strong>imagecolordeallocate()</strong>


id: imagecolorallocatealpha
type: function
doc:
<comment>Description:</comment>
  为图像分配颜色
  
  <strong>imagecolorallocatealpha()</strong> 的行为和 <strong>imagecolorallocate()</strong> 相同，但多了一个额外的透明度参数 <strong>$alpha</strong>。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$red</strong>    红色成分的值。
  <info>int</info>      <strong>$green</strong>  绿色成分的值。
  <info>int</info>      <strong>$blue</strong>   蓝色成分的值。
  <info>int</info>      <strong>$alpha</strong>  介于 <return>0</return> 和 <return>127</return> 之间的值。<return>0</return> 表示完全不透明，而 <return>127</return> 表示完全透明。

<comment>Return:</comment>
  <info>int|false</info>  颜色标识符，如果分配失败，则为 <info>false</info>。
             
             此函数可能返回布尔值
             <info>false</info>，但也可能返回等同于 <info>false</info> 的非布尔值。请阅读 布尔类型章节以获取更多信息。应使用
             ===
             运算符来测试此函数的返回值。

<comment>See Also:</comment>
   * <strong>imagecolorallocate()</strong>
   * <strong>imagecolordeallocate()</strong>


id: imagecolorat
type: function
doc:
<comment>Description:</comment>
  取得某像素的颜色索引值
  
  返回 <strong>$image</strong> 所指定的图像中指定位置像素的颜色索引值。
  
  如果图像是真彩色图像，此函数以整数返回该点的 RGB 值。用位移加掩码来取得红，绿，蓝各自的值：

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$x</strong>      点的 x 坐标。
  <info>int</info>      <strong>$y</strong>      点的 y 坐标。

<comment>Return:</comment>
  <info>int|false</info>  返回颜色的索引 或者在失败时返回 <info>false</info>。
             
             此函数可能返回布尔值
             <info>false</info>，但也可能返回等同于 <info>false</info> 的非布尔值。请阅读 布尔类型章节以获取更多信息。应使用
             ===
             运算符来测试此函数的返回值。

<comment>See Also:</comment>
   * <strong>imagecolorset()</strong>
   * <strong>imagecolorsforindex()</strong>
   * <strong>imagesetpixel()</strong>


id: imagecolorclosest
type: function
doc:
<comment>Description:</comment>
  取得与指定的颜色最接近的颜色索引值
  
  返回图像调色板中与指定的 RGB 值最“接近”的颜色索引。
  
  计算所需颜色与调色板中每种颜色之间的“距离”，就好像 RGB 值表示三维空间中的点一样。
  
  如果图象由文件创建，只有该图象使用到的颜色会被解析。仅存在于调色板中的颜色不会被解析。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$red</strong>    红色成分的值。
  <info>int</info>      <strong>$green</strong>  绿色成分的值。
  <info>int</info>      <strong>$blue</strong>   蓝色成分的值。

<comment>Return:</comment>
  <info>int</info>  返回图像调色板中最接近指定颜色的索引

<comment>See Also:</comment>
   * <strong>imagecolorexact()</strong>
   * <strong>imagecolorclosestalpha()</strong>
   * <strong>imagecolorclosesthwb()</strong>


id: imagecolorclosestalpha
type: function
doc:
<comment>Description:</comment>
  获取最接近指定颜色 + alpha 的颜色索引
  
  返回图像调色板中“最接近”指定 RGB 值以及 <strong>$alpha</strong> 级别的颜色索引。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$red</strong>    红色成分的值。
  <info>int</info>      <strong>$green</strong>  绿色成分的值。
  <info>int</info>      <strong>$blue</strong>   蓝色成分的值。
  <info>int</info>      <strong>$alpha</strong>  介于 <return>0</return> 和 <return>127</return> 之间的值。<return>0</return> 表示完全不透明，而 <return>127</return> 表示完全透明。

<comment>Return:</comment>
  <info>int</info>  返回调色板中最接近的颜色的索引。

<comment>See Also:</comment>
   * <strong>imagecolorexactalpha()</strong>
   * <strong>imagecolorclosest()</strong>
   * <strong>imagecolorclosesthwb()</strong>


id: imagecolorclosesthwb
type: function
doc:
<comment>Description:</comment>
  取得与给定颜色最接近的色度的黑白色的索引
  
  取得与给定颜色最接近的色度的黑白色的索引。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$red</strong>    红色成分的值。
  <info>int</info>      <strong>$green</strong>  绿色成分的值。
  <info>int</info>      <strong>$blue</strong>   蓝色成分的值。

<comment>Return:</comment>
  <info>int</info>  返回一个整数，是给定颜色最接近的色度的黑白色的索引。

<comment>See Also:</comment>
   * <strong>imagecolorclosest()</strong>


id: imagecolordeallocate
type: function
doc:
<comment>Description:</comment>
  取消图像颜色的分配
  
  取消分配先前由 <strong>imagecolorallocate()</strong> 或 <strong>imagecolorallocatealpha()</strong> 分配的颜色。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$color</strong>  颜色标识符。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagecolorallocate()</strong>
   * <strong>imagecolorallocatealpha()</strong>


id: imagecolorexact
type: function
doc:
<comment>Description:</comment>
  取得指定颜色的索引值
  
  返回图像调色板中指定颜色的索引值。
  
  如果图象由文件创建，只有该图象使用到的颜色会被解析。仅存在于调色板中的颜色不会被解析。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$red</strong>    红色成分的值。
  <info>int</info>      <strong>$green</strong>  绿色成分的值。
  <info>int</info>      <strong>$blue</strong>   蓝色成分的值。

<comment>Return:</comment>
  <info>int</info>  返回调色板中指定颜色的索引值，如果该颜色不存在则返回 -1。

<comment>See Also:</comment>
   * <strong>imagecolorclosest()</strong>


id: imagecolorexactalpha
type: function
doc:
<comment>Description:</comment>
  取得指定的颜色加透明度的索引值
  
  返回图像调色板中指定颜色加透明度的索引值。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$red</strong>    红色成分的值。
  <info>int</info>      <strong>$green</strong>  绿色成分的值。
  <info>int</info>      <strong>$blue</strong>   蓝色成分的值。
  <info>int</info>      <strong>$alpha</strong>  介于 <return>0</return> 和 <return>127</return> 之间的值。<return>0</return> 表示完全不透明，而 <return>127</return> 表示完全透明。

<comment>Return:</comment>
  <info>int</info>  返回图像调色板中指定颜色加透明度的索引值。 如果颜色不在图像的调色板中，返回 -1。

<comment>See Also:</comment>
   * <strong>imagecolorclosestalpha()</strong>


id: imagecolormatch
type: function
doc:
<comment>Description:</comment>
  使一个图像中调色板版本的颜色与真彩色版本更能匹配
  
  使一个图像中调色板版本的颜色与真彩色版本更能匹配。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image1</strong>  真彩色图像对象。
  <info>GdImage</info>  <strong>$image2</strong>  调色板图像对象，指向与 <strong>$image1</strong> 相同大小的图像。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagecreatetruecolor()</strong>


id: imagecolorresolve
type: function
doc:
<comment>Description:</comment>
  取得指定颜色的索引值或有可能得到的最接近的替代值
  
  本函数可以保证对所请求的颜色返回颜色索引，要么是准确的颜色要么是最接近的颜色。
  
  如果图象由文件创建，只有该图象使用到的颜色会被解析。仅存在于调色板中的颜色不会被解析。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$red</strong>    红色成分的值。
  <info>int</info>      <strong>$green</strong>  绿色成分的值。
  <info>int</info>      <strong>$blue</strong>   蓝色成分的值。

<comment>Return:</comment>
  <info>int</info>  返回颜色索引值。

<comment>See Also:</comment>
   * <strong>imagecolorclosest()</strong>


id: imagecolorresolvealpha
type: function
doc:
<comment>Description:</comment>
  取得指定颜色 + alpha 或其最接近的替代值
  
  本函数保证返回所请求的颜色的颜色索引，要么是确切的颜色要么是最接近的颜色。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$red</strong>    红色成分的值。
  <info>int</info>      <strong>$green</strong>  绿色成分的值。
  <info>int</info>      <strong>$blue</strong>   蓝色成分的值。
  <info>int</info>      <strong>$alpha</strong>  介于 <return>0</return> 和 <return>127</return> 之间的值。<return>0</return> 表示完全不透明，而 <return>127</return> 表示完全透明。

<comment>Return:</comment>
  <info>int</info>  返回颜色索引。

<comment>See Also:</comment>
   * <strong>imagecolorclosestalpha()</strong>


id: imagecolorset
type: function
doc:
<comment>Description:</comment>
  给指定调色板索引设定颜色
  
  本函数将调色板中指定的索引设定为指定的颜色。对于在调色板图像中创建类似区域填充（flood-fill）的效果
  很有用，免去了真的去填充的开销。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$color</strong>  调色板中的索引值。
  <info>int</info>      <strong>$red</strong>    红色成分的值。
  <info>int</info>      <strong>$green</strong>  绿色成分的值。
  <info>int</info>      <strong>$blue</strong>   蓝色成分的值。
  <info>int</info>      <strong>$alpha</strong>  alpha 的值。

<comment>Return:</comment>
  <info>false|null</info>  函数成功时返回 <info>null</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagecolorat()</strong>


id: imagecolorsforindex
type: function
doc:
<comment>Description:</comment>
  获取索引的颜色
  
  获取指定索引的颜色。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$color</strong>  颜色索引。

<comment>Return:</comment>
  <info>array</info>  返回具有 red、green、blue 和 alpha 的键名的关联数组，包含了指定颜色索引的适当值。

<comment>See Also:</comment>
   * <strong>imagecolorat()</strong>
   * <strong>imagecolorexact()</strong>


id: imagecolorstotal
type: function
doc:
<comment>Description:</comment>
  取得图像调色板中的颜色数量
  
  返回图像调色板中的颜色数量。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。

<comment>Return:</comment>
  <info>int</info>  返回指定图像调色板中的颜色数量，真彩色图像为 0。

<comment>See Also:</comment>
   * <strong>imagecolorat()</strong>
   * <strong>imagecolorsforindex()</strong>
   * <strong>imageistruecolor()</strong>


id: imagecolortransparent
type: function
doc:
<comment>Description:</comment>
  将颜色定义为透明
  
  获取或设置指定 <strong>$image</strong> 中的透明色。

<comment>Param:</comment>
  <info>GdImage</info>   <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                    <class>GdImage</class> 对象。
  <info>int|null</info>  <strong>$color</strong>  颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。

<comment>Return:</comment>
  <info>int</info>  返回新（或当前，如果未指定）透明色的标识符。如果 <strong>$color</strong> 为 <info>null</info>，并且图像没有透明色，则返回的
       标识符为 <return>-1</return>。


id: imageconvolution
type: function
doc:
<comment>Description:</comment>
  用系数 div 和 offset 申请一个 3x3 的卷积矩阵
  
  使用指定的系数和 offset 在图像上应用卷积矩阵。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>    由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                     <class>GdImage</class> 对象。
  <info>array</info>    <strong>$matrix</strong>   3x3 矩阵：三个浮点数组成的数组，再由这样的三个数组组成的数组。
  <info>float</info>    <strong>$divisor</strong>  The divisor of the result of the convolution, used for normalization.
  <info>float</info>    <strong>$offset</strong>   颜色偏移。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagefilter()</strong>


id: imagecopy
type: function
doc:
<comment>Description:</comment>
  拷贝图像的一部分
  
  从 x、y 坐标 <strong>$src_x</strong>、<strong>$src_y</strong> 开始，将 <strong>$src_image</strong> 的一部分复制到 <strong>$dst_image</strong> 上，宽度为 <strong>$src_width</strong>，
  高度为 <strong>$src_height</strong>。定义的部分将被复制到 x,y 坐标 <strong>$dst_x</strong> 和 <strong>$dst_y</strong> 上。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$dst_image</strong>   目标图象资源。
  <info>GdImage</info>  <strong>$src_image</strong>   源图象资源。
  <info>int</info>      <strong>$dst_x</strong>       目标点的 x 坐标。
  <info>int</info>      <strong>$dst_y</strong>       目标点的 y 坐标。
  <info>int</info>      <strong>$src_x</strong>       源点的 x 坐标。
  <info>int</info>      <strong>$src_y</strong>       源点的 y 坐标。
  <info>int</info>      <strong>$src_width</strong>   源图象的宽度。
  <info>int</info>      <strong>$src_height</strong>  源图象的高度。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagecrop()</strong>


id: imagecopymerge
type: function
doc:
<comment>Description:</comment>
  拷贝并合并图像的一部分
  
  从 x、y 坐标 <strong>$src_x</strong>、<strong>$src_y</strong> 开始，将 <strong>$src_image</strong> 的一部分复制到 <strong>$dst_image</strong> 上，宽度为 <strong>$src_width</strong>，
  高度为 <strong>$src_height</strong>。定义的部分将被复制到 x、y 坐标 <strong>$dst_x</strong> 和 <strong>$dst_y</strong> 上。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$dst_image</strong>   目标图象资源。
  <info>GdImage</info>  <strong>$src_image</strong>   源图象资源。
  <info>int</info>      <strong>$dst_x</strong>       目标点的 x 坐标。
  <info>int</info>      <strong>$dst_y</strong>       目标点的 y 坐标。
  <info>int</info>      <strong>$src_x</strong>       源点的 x 坐标。
  <info>int</info>      <strong>$src_y</strong>       源点的 y 坐标。
  <info>int</info>      <strong>$src_width</strong>   源图象的宽度。
  <info>int</info>      <strong>$src_height</strong>  源图象的高度。
  <info>int</info>      <strong>$pct</strong>         两个图像将根据 <strong>$pct</strong> 合并，范围是 0 到 100。当 <strong>$pct</strong> = 0，不采取任何操作，当
                        100 时，此函数的行为与调色板图像的 <strong>imagecopy()</strong> 相同，除了忽略 alpha alpha 组
                        件（components），其实现了真彩色图像的 alpha 透明度。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: imagecopymergegray
type: function
doc:
<comment>Description:</comment>
  用灰度复制并合并图像的一部分
  
  <strong>imagecopymergegray()</strong> 将 <strong>$src_image</strong> 的一部分复制到 <strong>$dst_image</strong> 上，起始于 x、y 坐标 <strong>$src_x</strong>、<strong>$src_y</strong>，
  宽度为 <strong>$src_width</strong>，高度为 <strong>$src_height</strong>。定义的部分将被复制到 x、y 坐标 <strong>$dst_x</strong> 和 <strong>$dst_y</strong> 上。
  
  本函数和 <strong>imagecopymerge()</strong> 相同，只是在合并时通过在复制操作前将目标像素转换为灰度级来保留了原色度。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$dst_image</strong>   目标图象资源。
  <info>GdImage</info>  <strong>$src_image</strong>   源图象资源。
  <info>int</info>      <strong>$dst_x</strong>       目标点的 x 坐标。
  <info>int</info>      <strong>$dst_y</strong>       目标点的 y 坐标。
  <info>int</info>      <strong>$src_x</strong>       源点的 x 坐标。
  <info>int</info>      <strong>$src_y</strong>       源点的 y 坐标。
  <info>int</info>      <strong>$src_width</strong>   源图象的宽度。
  <info>int</info>      <strong>$src_height</strong>  源图象的高度。
  <info>int</info>      <strong>$pct</strong>         <strong>$src_image</strong> 将根据 <strong>$pct</strong> 改变灰度，其中 0 为全灰度，100 不变。当 <strong>$pct</strong> = 100
                        时，此函数的行为与调色板图像的 <strong>imagecopy()</strong> 相同，除了忽略 alpha 组件
                        （components），其实现了真彩色图像的 alpha 透明度。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: imagecopyresampled
type: function
doc:
<comment>Description:</comment>
  重采样拷贝部分图像并调整大小
  
  <strong>imagecopyresampled()</strong> 将一幅图像中的一块正方形区域拷贝到另一个图像中，平滑地插入像素值，因此，尤其
  是，减小了图像的大小而仍然保持了极大的清晰度。
  
  换句话说，<strong>imagecopyresampled()</strong> 会从 <strong>$src_image</strong> 中取出一个宽度为 <strong>$src_width</strong> 高度为 <strong>$src_height</strong> 的矩
  形区域，在位置（<strong>$src_x</strong>、<strong>$src_y</strong>）并将其放置在 <strong>$dst_image</strong> 中宽度为 <strong>$dst_width</strong> 高度为 <strong>$dst_height</strong> 的
  矩形区域中，位置为（<strong>$dst_x</strong>、<strong>$dst_y</strong>）。
  
  如果源和目标的宽度和高度不同，则会进行相应的图像收缩和拉伸。坐标指的是左上角。本函数可用来在同一幅
  图内部拷贝（如果 <strong>$dst_image</strong> 和 <strong>$src_image</strong> 相同的话）区域，但如果区域交迭的话则结果不可预知。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$dst_image</strong>   目标图象资源。
  <info>GdImage</info>  <strong>$src_image</strong>   源图象资源。
  <info>int</info>      <strong>$dst_x</strong>       目标 X 坐标点。
  <info>int</info>      <strong>$dst_y</strong>       目标 Y 坐标点。
  <info>int</info>      <strong>$src_x</strong>       源的 X 坐标点。
  <info>int</info>      <strong>$src_y</strong>       源的 Y 坐标点。
  <info>int</info>      <strong>$dst_width</strong>   目标宽度。
  <info>int</info>      <strong>$dst_height</strong>  目标高度。
  <info>int</info>      <strong>$src_width</strong>   源图象的宽度。
  <info>int</info>      <strong>$src_height</strong>  源图象的高度。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagecopyresized()</strong>
   * <strong>imagescale()</strong>
   * <strong>imagecrop()</strong>


id: imagecopyresized
type: function
doc:
<comment>Description:</comment>
  拷贝部分图像并调整大小
  
  <strong>imagecopyresized()</strong> 将一幅图像中的一块矩形区域拷贝到另一个图像中。<strong>$dst_image</strong> 和 <strong>$src_image</strong> 分别是目
  标图像和源图像的标识符。
  
  换句话说，<strong>imagecopyresized()</strong> 会从 <strong>$src_image</strong> 中取出一个宽度为 <strong>$src_width</strong> 高度为 <strong>$src_height</strong> 的矩形
  区域，在位置（<strong>$src_x</strong>、<strong>$src_y</strong>）并将其放置在 <strong>$dst_image</strong> 中宽度为 <strong>$dst_width</strong> 高度为 <strong>$dst_height</strong> 的矩
  形区域中，位置为（<strong>$dst_x</strong>、<strong>$dst_y</strong>）。
  
  如果源和目标的宽度和高度不同，则会进行相应的图像收缩和拉伸。坐标指的是左上角。本函数可用来在同一幅
  图内部拷贝（如果 <strong>$dst_image</strong> 和 <strong>$src_image</strong> 相同的话）区域，但如果区域交迭的话则结果不可预知。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$dst_image</strong>   目标图象资源。
  <info>GdImage</info>  <strong>$src_image</strong>   源图象资源。
  <info>int</info>      <strong>$dst_x</strong>       目标点的 x 坐标。
  <info>int</info>      <strong>$dst_y</strong>       目标点的 y 坐标。
  <info>int</info>      <strong>$src_x</strong>       源点的 x 坐标。
  <info>int</info>      <strong>$src_y</strong>       源点的 y 坐标。
  <info>int</info>      <strong>$dst_width</strong>   目标宽度。
  <info>int</info>      <strong>$dst_height</strong>  目标高度。
  <info>int</info>      <strong>$src_width</strong>   源图象的宽度。
  <info>int</info>      <strong>$src_height</strong>  源图象的高度。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagecopyresized()</strong>
   * <strong>imagescale()</strong>
   * <strong>imagecrop()</strong>


id: imagecreate
type: function
doc:
<comment>Description:</comment>
  创建新的基于调色板的图像
  
  <strong>imagecreate()</strong> 返回代表指定大小的空白图像的图像标识符。
  
  通常，建议使用 <strong>imagecreatetruecolor()</strong> 而不是 <strong>imagecreate()</strong>，以便在尽可能的最高质量图像上进行图像处
  理。如果要输出调色板图像，则应在使用 <strong>imagepng()</strong> 或 <strong>imagegif()</strong> 保存图像之前立即调用
  <strong>imagetruecolortopalette()</strong>。

<comment>Param:</comment>
  <info>int</info>  <strong>$width</strong>   图像宽度。
  <info>int</info>  <strong>$height</strong>  图像高度。

<comment>Return:</comment>
  <info>GdImage|false</info>  成功后返回图象对象,失败后返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagedestroy()</strong>
   * <strong>imagecreatetruecolor()</strong>


id: imagecreatefromavif
type: function
doc:
<comment>Description:</comment>
  由文件或 URL 创建一个新图象。
  
  <strong>imagecreatefromavif()</strong> returns an image object representing the image obtained from the given
  filename.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  Path to the AVIF raster image.

<comment>Return:</comment>
  <info>GdImage|false</info>  成功后返回图象对象,失败后返回 <info>false</info>。


id: imagecreatefrombmp
type: function
doc:
<comment>Description:</comment>
  由文件或 URL 创建一个新图象。
  
  <strong>imagecreatefrombmp()</strong> returns an image identifier representing the image obtained from the given
  filename.
  
  如已启用fopen 包装器，在此函数中， URL 可作为文件名。关于如何指定文件名详见 <strong>fopen()</strong>。各种
  wapper 的不同功能请参见 ，注意其用法及其可提供的预定义变量。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  Path to the BMP image.

<comment>Return:</comment>
  <info>GdImage|false</info>  成功后返回图象对象,失败后返回 <info>false</info>。


id: imagecreatefromgd
type: function
doc:
<comment>Description:</comment>
  从 GD 文件或 URL 新建一图像
  
  从 GD 文件或 URL 新建一图像。
  
  如已启用fopen 包装器，在此函数中， URL 可作为文件名。关于如何指定文件名详见 <strong>fopen()</strong>。各种
  wapper 的不同功能请参见 ，注意其用法及其可提供的预定义变量。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  GD 文件的路径。

<comment>Return:</comment>
  <info>GdImage|false</info>  成功后返回图象对象,失败后返回 <info>false</info>。


id: imagecreatefromgd2
type: function
doc:
<comment>Description:</comment>
  从 GD2 文件或 URL 新建一图像
  
  从 GD2 文件或 URL 新建一图像。
  
  如已启用fopen 包装器，在此函数中， URL 可作为文件名。关于如何指定文件名详见 <strong>fopen()</strong>。各种
  wapper 的不同功能请参见 ，注意其用法及其可提供的预定义变量。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  GD2 图像的路径。

<comment>Return:</comment>
  <info>GdImage|false</info>  成功后返回图象对象,失败后返回 <info>false</info>。


id: imagecreatefromgd2part
type: function
doc:
<comment>Description:</comment>
  从指定的 GD2 文件或 URL 的部分创建新图像
  
  从指定的 GD2 文件或 URL 的部分创建新图像。
  
  如已启用fopen 包装器，在此函数中， URL 可作为文件名。关于如何指定文件名详见 <strong>fopen()</strong>。各种
  wapper 的不同功能请参见 ，注意其用法及其可提供的预定义变量。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  GD2 图像路径。
  <info>int</info>     <strong>$x</strong>         源点的 x 坐标。
  <info>int</info>     <strong>$y</strong>         源点的 y 坐标。
  <info>int</info>     <strong>$width</strong>     源图象的宽度。
  <info>int</info>     <strong>$height</strong>    源图象的高度。

<comment>Return:</comment>
  <info>GdImage|false</info>  成功后返回图象对象,失败后返回 <info>false</info>。


id: imagecreatefromgif
type: function
doc:
<comment>Description:</comment>
  由文件或 URL 创建一个新图象。
  
  <strong>imagecreatefromgif()</strong> 返回图像标识符，代表从指定文件名获得的图像。
  
  当读取 GIF 文件到内存中时，图像对象仅返回第一帧。图像的大小不一定是 <strong>getimagesize()</strong> 报告的大小。
  
  如已启用fopen 包装器，在此函数中， URL 可作为文件名。关于如何指定文件名详见 <strong>fopen()</strong>。各种
  wapper 的不同功能请参见 ，注意其用法及其可提供的预定义变量。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  GIF 图像的路径。

<comment>Return:</comment>
  <info>GdImage|false</info>  成功后返回图象对象,失败后返回 <info>false</info>。


id: imagecreatefromjpeg
type: function
doc:
<comment>Description:</comment>
  由文件或 URL 创建一个新图象。
  
  <strong>imagecreatefromjpeg()</strong> 返回图像标识符，代表从指定文件名获得的图像。
  
  如已启用fopen 包装器，在此函数中， URL 可作为文件名。关于如何指定文件名详见 <strong>fopen()</strong>。各种
  wapper 的不同功能请参见 ，注意其用法及其可提供的预定义变量。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  JPEG 图像的路径。

<comment>Return:</comment>
  <info>GdImage|false</info>  成功后返回图象对象,失败后返回 <info>false</info>。


id: imagecreatefrompng
type: function
doc:
<comment>Description:</comment>
  由文件或 URL 创建一个新图象。
  
  <strong>imagecreatefrompng()</strong> 返回图像标识符，代表从指定文件名获得的图像。
  
  如已启用fopen 包装器，在此函数中， URL 可作为文件名。关于如何指定文件名详见 <strong>fopen()</strong>。各种
  wapper 的不同功能请参见 ，注意其用法及其可提供的预定义变量。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  PNG 图像的路径。

<comment>Return:</comment>
  <info>GdImage|false</info>  成功后返回图象对象,失败后返回 <info>false</info>。


id: imagecreatefromstring
type: function
doc:
<comment>Description:</comment>
  从字符串的图像流中新建图像
  
  <strong>imagecreatefromstring()</strong> 返回图像标识符，代表从指定 <strong>$data</strong> 获得的图像。图像格式将自动检测，只要编译
  的 PHP 支持：JPEG、PNG、GIF、BMP、WBMP、GD2 和 WEBP。

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>  包含图像数据的字符串。

<comment>Return:</comment>
  <info>GdImage|false</info>  成功时返回图像对象。如果图像类型不支持、数据格式不可识别或者图像已损坏且无法加载，
                 则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagecreatefromjpeg()</strong>
   * <strong>imagecreatefrompng()</strong>
   * <strong>imagecreatefromgif()</strong>
   * <strong>imagecreatetruecolor()</strong>


id: imagecreatefromtga
type: function
doc:
<comment>Description:</comment>
  由文件或 URL 创建一个新图象。
  
  <strong>imagecreatefromtga()</strong> returns an image object representing the image obtained from the given
  filename.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  Path to the Truevision TGA image.

<comment>Return:</comment>
  <info>GdImage|false</info>  成功后返回图象对象,失败后返回 <info>false</info>。


id: imagecreatefromwbmp
type: function
doc:
<comment>Description:</comment>
  由文件或 URL 创建一个新图象。
  
  <strong>imagecreatefromwbmp()</strong> 返回图像标识符，代表从指定文件名获得的图像。
  
  WBMP 图像是无线位图（Wireless Bitmaps），不是 Windows 位图（Windows Bitmaps）。后者可以用
  <strong>imagecreatefrombmp()</strong> 加载。
  
  如已启用fopen 包装器，在此函数中， URL 可作为文件名。关于如何指定文件名详见 <strong>fopen()</strong>。各种
  wapper 的不同功能请参见 ，注意其用法及其可提供的预定义变量。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  WBMP 图像的路径。

<comment>Return:</comment>
  <info>GdImage|false</info>  成功后返回图象对象,失败后返回 <info>false</info>。


id: imagecreatefromwebp
type: function
doc:
<comment>Description:</comment>
  由文件或 URL 创建一个新图象。
  
  <strong>imagecreatefromwebp()</strong> 返回图像标识符，代表从指定文件名获得的图像。请注意，无法读取动画 WebP 文件。
  
  如已启用fopen 包装器，在此函数中， URL 可作为文件名。关于如何指定文件名详见 <strong>fopen()</strong>。各种
  wapper 的不同功能请参见 ，注意其用法及其可提供的预定义变量。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  WebP 图像路径。

<comment>Return:</comment>
  <info>GdImage|false</info>  成功后返回图象对象,失败后返回 <info>false</info>。


id: imagecreatefromxbm
type: function
doc:
<comment>Description:</comment>
  由文件或 URL 创建一个新图象。
  
  <strong>imagecreatefromxbm()</strong> 返回图像标识符，代表从指定文件名获得的图像。
  
  如已启用fopen 包装器，在此函数中， URL 可作为文件名。关于如何指定文件名详见 <strong>fopen()</strong>。各种
  wapper 的不同功能请参见 ，注意其用法及其可提供的预定义变量。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  XBM 图像路径。

<comment>Return:</comment>
  <info>GdImage|false</info>  成功后返回图象对象,失败后返回 <info>false</info>。


id: imagecreatefromxpm
type: function
doc:
<comment>Description:</comment>
  由文件或 URL 创建一个新图象。
  
  <strong>imagecreatefromxpm()</strong> 返回图像标识符，代表从指定文件名获得的图像。
  
  如已启用fopen 包装器，在此函数中， URL 可作为文件名。关于如何指定文件名详见 <strong>fopen()</strong>。各种
  wapper 的不同功能请参见 ，注意其用法及其可提供的预定义变量。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  XPM 图像的路径。

<comment>Return:</comment>
  <info>GdImage|false</info>  成功后返回图象对象,失败后返回 <info>false</info>。


id: imagecreatetruecolor
type: function
doc:
<comment>Description:</comment>
  新建真彩色图像
  
  <strong>imagecreatetruecolor()</strong> 返回图像对象，表示指定大小的黑色图像。

<comment>Param:</comment>
  <info>int</info>  <strong>$width</strong>   图像宽度。
  <info>int</info>  <strong>$height</strong>  图像高度。

<comment>Return:</comment>
  <info>GdImage|false</info>  成功后返回图象对象,失败后返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagedestroy()</strong>
   * <strong>imagecreate()</strong>


id: imagecrop
type: function
doc:
<comment>Description:</comment>
  Crop an image to the given rectangle
  
  Crops an image to the given rectangular area and returns the resulting image. The given <strong>$image</strong> is
  not modified.

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>      由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                       <class>GdImage</class> 对象。
  <info>array</info>    <strong>$rectangle</strong>  The cropping rectangle as <info>array</info> with keys <return>x</return>, <return>y</return>, <return>width</return> and <return>height</return>.

<comment>Return:</comment>
  <info>GdImage|false</info>  Return cropped image object on success 或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>imagecropauto()</strong>


id: imagecropauto
type: function
doc:
<comment>Description:</comment>
  Crop an image automatically using one of the available modes
  
  Automatically crops an image according to the given <strong>$mode</strong>.

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>      由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                       <class>GdImage</class> 对象。
  <info>int</info>      <strong>$mode</strong>       One of the following constants:
                       
                       Same as <info>IMG_CROP_TRANSPARENT</info>. Before PHP 7.4.0, the bundled libgd fell back
                       to <info>IMG_CROP_SIDES</info>, if the image had no transparent color.
                       
                       Crops out a transparent background.
                       
                       Crops out a black background.
                       
                       Crops out a white background.
                       
                       Uses the 4 corners of the image to attempt to detect the background to crop.
                       
                       Crops an image using the given <strong>$threshold</strong> and <strong>$color</strong>.
  <info>float</info>    <strong>$threshold</strong>  Crops an image using the given <strong>$threshold</strong> and <strong>$color</strong>.
  <info>float</info>    <strong>$threshold</strong>  Specifies the tolerance in percent to be used while comparing the image color
                       and the color to crop. The method used to calculate the color difference is
                       based on the color distance in the RGB(a) cube.
                       
                       Used only in <info>IMG_CROP_THRESHOLD</info> mode.
                       
                       Before PHP 7.4.0, the bundled libgd used a somewhat different algorithm, so
                       the same <strong>$threshold</strong> yielded different results for system and bundled libgd.
  <info>int</info>      <strong>$color</strong>      Either an RGB color value or a palette index.
                       
                       Used only in <info>IMG_CROP_THRESHOLD</info> mode.

<comment>Return:</comment>
  <info>GdImage|false</info>  Returns a cropped image object on success 或者在失败时返回 <info>false</info>. If the complete
                 image was cropped, <strong>imagecrop()</strong> returns <info>false</info>.

<comment>See Also:</comment>
   * <strong>imagecrop()</strong>


id: imagedashedline
type: function
doc:
<comment>Description:</comment>
  绘制虚线
  
  弃用此函数。使用 <strong>imagesetstyle()</strong> 和 <strong>imageline()</strong> 组合替代。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$x1</strong>     左上 x 坐标。
  <info>int</info>      <strong>$y1</strong>     左上 y 坐标。0，0 为图像的左上角。
  <info>int</info>      <strong>$x2</strong>     右下 x 坐标。
  <info>int</info>      <strong>$y2</strong>     右下 y 坐标。
  <info>int</info>      <strong>$color</strong>  填充颜色。颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagesetstyle()</strong>
   * <strong>imageline()</strong>


id: imagedestroy
type: function
doc:
<comment>Description:</comment>
  销毁图像
  
  此函数无效。在 PHP 8.0.0 之前，用于关闭资源。
  
  在 PHP 8.0.0 之前，<strong>imagedestroy()</strong> 释放与图像 <strong>$image</strong> 关联的所有内存。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: imageellipse
type: function
doc:
<comment>Description:</comment>
  画椭圆
  
  绘制以指定坐标为中心的椭圆。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>     由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                      <class>GdImage</class> 对象。
  <info>int</info>      <strong>$center_x</strong>  中间的 x 坐标。
  <info>int</info>      <strong>$center_y</strong>  中间的 y 坐标。
  <info>int</info>      <strong>$width</strong>     椭圆的宽度。
  <info>int</info>      <strong>$height</strong>    椭圆的高度。
  <info>int</info>      <strong>$color</strong>     椭圆的颜色。颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagefilledellipse()</strong>
   * <strong>imagearc()</strong>


id: imagefill
type: function
doc:
<comment>Description:</comment>
  漫水填充
  
  使用 <strong>$image</strong> 中的指定 <strong>$color</strong> 从指定坐标（左上角为 0，0）开始执行漫水填充。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$x</strong>      起点的 x 坐标。
  <info>int</info>      <strong>$y</strong>      起点的 y 坐标。
  <info>int</info>      <strong>$color</strong>  填充颜色。颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagecolorallocate()</strong>


id: imagefilledarc
type: function
doc:
<comment>Description:</comment>
  绘制部分弧形并填充
  
  在指定 <strong>$image</strong> 中以指定坐标为中心绘制部分弧形。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>        由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                         <class>GdImage</class> 对象。
  <info>int</info>      <strong>$center_x</strong>     中间的 x 坐标。
  <info>int</info>      <strong>$center_y</strong>     中间的 y 坐标。
  <info>int</info>      <strong>$width</strong>        弧形宽度。
  <info>int</info>      <strong>$height</strong>       弧形高度。
  <info>int</info>      <strong>$start_angle</strong>  弧形起始角，以度为单位。
  <info>int</info>      <strong>$end_angle</strong>    弧形结束角度，以度为单位。0° 位于三点钟位置，顺时针绘制弧形。
  <info>int</info>      <strong>$color</strong>        颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。
  <info>int</info>      <strong>$style</strong>        值可以是下列值的按位或（OR）：
                         <info>IMG_ARC_PIE</info><info>IMG_ARC_CHORD</info><info>IMG_ARC_NOFILL</info><info>IMG_ARC_EDGED</info> <info>IMG_ARC_PIE</info> 和
                         <info>IMG_ARC_CHORD</info> 是互斥的；<info>IMG_ARC_CHORD</info> 只是用直线连接了起始和结束点，
                         <info>IMG_ARC_PIE</info> 则产生圆形边界。<info>IMG_ARC_NOFILL</info> 指明弧或弦只有轮廓，不填充。
                         <info>IMG_ARC_EDGED</info> 指明用直线将起始和结束点与中心点相连，和 <info>IMG_ARC_NOFILL</info> 一起
                         使用是画饼状图轮廓的好方法（而不用填充）。
                         
                         <info>IMG_ARC_PIE</info>
                         
                         <info>IMG_ARC_CHORD</info>
                         
                         <info>IMG_ARC_NOFILL</info>
                         
                         <info>IMG_ARC_EDGED</info>

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: imagefilledellipse
type: function
doc:
<comment>Description:</comment>
  绘制椭圆并填充
  
  在指定 <strong>$image</strong> 上以指定坐标为中心绘制椭圆。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>     由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                      <class>GdImage</class> 对象。
  <info>int</info>      <strong>$center_x</strong>  中央的 x 坐标。
  <info>int</info>      <strong>$center_y</strong>  中央的 y 坐标。
  <info>int</info>      <strong>$width</strong>     椭圆的宽度。
  <info>int</info>      <strong>$height</strong>    椭圆的高度。
  <info>int</info>      <strong>$color</strong>     填充颜色。颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imageellipse()</strong>
   * <strong>imagefilledarc()</strong>


id: imagefilledpolygon
type: function
doc:
<comment>Description:</comment>
  绘制多边形并填充
  
  自 PHP 8.0.0 起的签名（不支持命名参数）
  
  替代签名（从 PHP 8.1.0 起弃用）
  
  <strong>imagefilledpolygon()</strong> 在指定 <strong>$image</strong> 中创建多边形并填充。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>       由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                        <class>GdImage</class> 对象。
  <info>array</info>    <strong>$points</strong>      包含连续多边形顶点的 <return>x</return> 和 <return>y</return> 坐标的数组。
  <info>int</info>      <strong>$num_points</strong>  点（顶点）的总数，必须最少为 3。
                        
                        如果根据第二个签名省略此参数，则 <strong>$points</strong> 必须具有偶数个元素，并且假定
                        <strong>$num_points</strong> 为 count($points)/2。
  <info>int</info>      <strong>$color</strong>       颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagepolygon()</strong>


id: imagefilledrectangle
type: function
doc:
<comment>Description:</comment>
  绘制矩形并填充
  
  在指定 <strong>$image</strong> 中创建一个从点 1 开始到点 2 结束的的矩形并填充 <strong>$color</strong>。0, 0 是图像的左上角。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$x1</strong>     点 1 的 x 坐标。
  <info>int</info>      <strong>$y1</strong>     点 1 的 y 坐标。
  <info>int</info>      <strong>$x2</strong>     点 2 的 x 坐标。
  <info>int</info>      <strong>$y2</strong>     点 2 的 y 坐标。
  <info>int</info>      <strong>$color</strong>  填充颜色。颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: imagefilltoborder
type: function
doc:
<comment>Description:</comment>
  漫水填充特定颜色
  
  <strong>imagefilltoborder()</strong> 执行漫水填充，其边框颜色由 <strong>$border_color</strong> 定义。填充的起点是 <strong>$x</strong>, <strong>$y</strong>（左上角是0,
  0），区域用颜色 <strong>$color</strong> 填充。【注：边界内的所有颜色都会被填充。如果指定的边界色和该点颜色相同，则
  没有填充。如果图像中没有该边界色，则整幅图像都会被填充。】

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>         由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                          <class>GdImage</class> 对象。
  <info>int</info>      <strong>$x</strong>             起点的 x 坐标。
  <info>int</info>      <strong>$y</strong>             起点的 y 坐标。
  <info>int</info>      <strong>$border_color</strong>  边框颜色。颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。
  <info>int</info>      <strong>$color</strong>         填充颜色。颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: imagefilter
type: function
doc:
<comment>Description:</comment>
  对图像使用过滤器
  
  <strong>imagefilter()</strong> 在 <strong>$image</strong> 上应用指定的过滤器 <strong>$filter</strong>。

<comment>Param:</comment>
  <info>GdImage</info>               <strong>$image</strong>   由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                                 <class>GdImage</class> 对象。
  <info>int</info>                   <strong>$filter</strong>  <strong>$filter</strong> 可以是下列中的一个： <info>IMG_FILTER_NEGATE</info>：将图像中所有颜色反
                                 转。 <info>IMG_FILTER_GRAYSCALE</info>: Converts the image into grayscale by
                                 changing the red, green and blue components to their weighted sum
                                 using the same coefficients as the REC.601 luma (Y') calculation.
                                 The alpha components are retained. For palette images the result
                                 may differ due to palette limitations. <info>IMG_FILTER_BRIGHTNESS</info>：更改
                                 图像的亮度。使用 <strong>$args</strong> 设置亮度级别。亮度的范围是 -255 到 255。
                                 <info>IMG_FILTER_CONTRAST</info>：更改图像的对比度。使用 <strong>$args</strong> 设置对比度级别。
                                 <info>IMG_FILTER_COLORIZE</info>：与 <info>IMG_FILTER_GRAYSCALE</info> 类似，区别是可以指定颜
                                 色。使用 <strong>$args</strong>、<strong>$arg2</strong> 和 <strong>$arg3</strong> 以 <strong>$red</strong>、<strong>$green</strong>、<strong>$blue</strong> 的形式和
                                 <strong>$arg4</strong> 用于 <strong>$alpha</strong> 通道。每种颜色的范围是 0 到 255。
                                 <info>IMG_FILTER_EDGEDETECT</info>：用边缘检测来突出图像的边缘。
                                 <info>IMG_FILTER_EMBOSS</info>：使图像浮雕化。 <info>IMG_FILTER_GAUSSIAN_BLUR</info>：用高斯
                                 算法模糊图像。 <info>IMG_FILTER_SELECTIVE_BLUR</info>：模糊图像。
                                 <info>IMG_FILTER_MEAN_REMOVAL</info>：用平均移除法来达到“轮廓”效果。
                                 <info>IMG_FILTER_SMOOTH</info>：使图像更平滑。用 <strong>$args</strong> 设定平滑级别。
                                 <info>IMG_FILTER_PIXELATE</info>：对图像应用像素化效果，使用 <strong>$args</strong> 设置块大小和
                                 <strong>$arg2</strong> 设置像素化效果模式。 <info>IMG_FILTER_SCATTER</info>：将散射效果应用于图
                                 像，使用 <strong>$args</strong> 和 <strong>$arg2</strong> 定义效果强度，另外使用 <strong>$arg3</strong> 仅应用选定像素
                                 颜色。
                                 
                                 <info>IMG_FILTER_NEGATE</info>：将图像中所有颜色反转。
                                 
                                 <info>IMG_FILTER_GRAYSCALE</info>: Converts the image into grayscale by changing
                                 the red, green and blue components to their weighted sum using the
                                 same coefficients as the REC.601 luma (Y') calculation. The alpha
                                 components are retained. For palette images the result may differ
                                 due to palette limitations.
                                 
                                 <info>IMG_FILTER_BRIGHTNESS</info>：更改图像的亮度。使用 <strong>$args</strong> 设置亮度级别。亮
                                 度的范围是 -255 到 255。
                                 
                                 <info>IMG_FILTER_CONTRAST</info>：更改图像的对比度。使用 <strong>$args</strong> 设置对比度级别。
                                 
                                 <info>IMG_FILTER_COLORIZE</info>：与 <info>IMG_FILTER_GRAYSCALE</info> 类似，区别是可以指定颜
                                 色。使用 <strong>$args</strong>、<strong>$arg2</strong> 和 <strong>$arg3</strong> 以 <strong>$red</strong>、<strong>$green</strong>、<strong>$blue</strong> 的形式和
                                 <strong>$arg4</strong> 用于 <strong>$alpha</strong> 通道。每种颜色的范围是 0 到 255。
                                 
                                 <info>IMG_FILTER_EDGEDETECT</info>：用边缘检测来突出图像的边缘。
                                 
                                 <info>IMG_FILTER_EMBOSS</info>：使图像浮雕化。
                                 
                                 <info>IMG_FILTER_GAUSSIAN_BLUR</info>：用高斯算法模糊图像。
                                 
                                 <info>IMG_FILTER_SELECTIVE_BLUR</info>：模糊图像。
                                 
                                 <info>IMG_FILTER_MEAN_REMOVAL</info>：用平均移除法来达到“轮廓”效果。
                                 
                                 <info>IMG_FILTER_SMOOTH</info>：使图像更平滑。用 <strong>$args</strong> 设定平滑级别。
                                 
                                 <info>IMG_FILTER_PIXELATE</info>：对图像应用像素化效果，使用 <strong>$args</strong> 设置块大小和
                                 <strong>$arg2</strong> 设置像素化效果模式。
                                 
                                 <info>IMG_FILTER_SCATTER</info>：将散射效果应用于图像，使用 <strong>$args</strong> 和 <strong>$arg2</strong> 定义
                                 效果强度，另外使用 <strong>$arg3</strong> 仅应用选定像素颜色。
  <info>array|int|float|bool</info>  <strong>$args</strong>    <info>IMG_FILTER_BRIGHTNESS</info>：亮度级别。 <info>IMG_FILTER_CONTRAST</info>：对比度级别。
                                 <info>IMG_FILTER_COLORIZE</info>: 红色成分的值。 <info>IMG_FILTER_SMOOTH</info>: Smoothness
                                 level. <info>IMG_FILTER_PIXELATE</info>: Block size in pixels.
                                 <info>IMG_FILTER_SCATTER</info>: Effect substraction level.  This must not be
                                 higher or equal to the addition level set with  <strong>$arg2</strong>.
                                 
                                 <info>IMG_FILTER_BRIGHTNESS</info>：亮度级别。
                                 
                                 <info>IMG_FILTER_CONTRAST</info>：对比度级别。
                                 
                                 <info>IMG_FILTER_COLORIZE</info>: 红色成分的值。
                                 
                                 <info>IMG_FILTER_SMOOTH</info>: Smoothness level.
                                 
                                 <info>IMG_FILTER_PIXELATE</info>: Block size in pixels.
                                 
                                 <info>IMG_FILTER_SCATTER</info>: Effect substraction level.  This must not be
                                 higher or equal to the addition level set with  <strong>$arg2</strong>.
  <info></info>                      <strong>$arg2</strong>    <info>IMG_FILTER_COLORIZE</info>: 绿色成分的值。 <info>IMG_FILTER_PIXELATE</info>：是否使用高
                                 级像素化效果（默认为 <info>false</info>）。 <info>IMG_FILTER_SCATTER</info>：效果添加级别。
                                 
                                 <info>IMG_FILTER_COLORIZE</info>: 绿色成分的值。
                                 
                                 <info>IMG_FILTER_PIXELATE</info>：是否使用高级像素化效果（默认为 <info>false</info>）。
                                 
                                 <info>IMG_FILTER_SCATTER</info>：效果添加级别。
  <info></info>                      <strong>$arg3</strong>    <info>IMG_FILTER_COLORIZE</info>: 蓝色成分的值。 <info>IMG_FILTER_SCATTER</info>: Optional
                                 array indexed color values  to apply effect at.
                                 
                                 <info>IMG_FILTER_COLORIZE</info>: 蓝色成分的值。
                                 
                                 <info>IMG_FILTER_SCATTER</info>: Optional array indexed color values  to apply
                                 effect at.
  <info></info>                      <strong>$arg4</strong>    <info>IMG_FILTER_COLORIZE</info>: Alpha channel, A value  between 0 and 127. 0
                                 indicates completely opaque while 127 indicates  completely
                                 transparent.
                                 
                                 <info>IMG_FILTER_COLORIZE</info>: Alpha channel, A value  between 0 and 127. 0
                                 indicates completely opaque while 127 indicates  completely
                                 transparent.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imageconvolution()</strong>


id: imageflip
type: function
doc:
<comment>Description:</comment>
  Flips an image using a given mode
  
  Flips the <strong>$image</strong> image using the given <strong>$mode</strong>.

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$mode</strong>   Flip mode, this can be one of the <info>IMG_FLIP_*</info> constants:
                   
                   ConstantMeaning<info>IMG_FLIP_HORIZONTAL</info> Flips the image horizontally.
                   <info>IMG_FLIP_VERTICAL</info> Flips the image vertically. <info>IMG_FLIP_BOTH</info> Flips the image both
                   horizontally and vertically.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: imagefontheight
type: function
doc:
<comment>Description:</comment>
  获取字体高度
  
  返回指定字体中字符的像素高度。

<comment>Param:</comment>
  <info>GdFont|int</info>  <strong>$font</strong>  取值对于内建的 latin2 编码字体可以是：1、2、3、4、5(更高的数字对应更大的字体)，
                     或是通过 <strong>imageloadfont()</strong> 返回的 <class>GdFont</class> 实例。

<comment>Return:</comment>
  <info>int</info>  返回字体的像素高度。

<comment>See Also:</comment>
   * <strong>imagefontwidth()</strong>
   * <strong>imageloadfont()</strong>


id: imagefontwidth
type: function
doc:
<comment>Description:</comment>
  获取字体宽度
  
  返回字体中字符的像素宽度。

<comment>Param:</comment>
  <info>GdFont|int</info>  <strong>$font</strong>  取值对于内建的 latin2 编码字体可以是：1、2、3、4、5(更高的数字对应更大的字体)，
                     或是通过 <strong>imageloadfont()</strong> 返回的 <class>GdFont</class> 实例。

<comment>Return:</comment>
  <info>int</info>  返回字体的像素宽度。

<comment>See Also:</comment>
   * <strong>imagefontheight()</strong>
   * <strong>imageloadfont()</strong>


id: imageftbbox
type: function
doc:
<comment>Description:</comment>
  通过 freetype2 使用字体给出文本的边界框
  
  此函数计算并返回 FreeType 文本的边界框（以像素为单位）。
  
  在 PHP 8.0.0 之前，<strong>imageftbbox()</strong> 是 <strong>imagettfbbox()</strong> 的扩展变体，它还支持 <strong>$options</strong>。 自 PHP 8.0.0
  起，<strong>imagettfbbox()</strong> 是 <strong>imageftbbox()</strong> 的别名。

<comment>Param:</comment>
  <info>float</info>   <strong>$size</strong>           字体的尺寸，单位：点（磅）。
  <info>float</info>   <strong>$angle</strong>          测量的 <strong>$string</strong> 的角度（以度为单位）。
  <info>string</info>  <strong>$font_filename</strong>  TrueType 字体文件的名称（可以是 URL）。根据 PHP 使用的 GD 库的版本，可能会
                          尝试搜索没有以“/”开头并会在末尾追加“.ttf”的文件名，并沿着库定义的字体路径
                          搜索。
  <info>string</info>  <strong>$string</strong>         要测量的字符串。
  <info>array</info>   <strong>$options</strong>        <strong>$options</strong> 可能的数组索引键类型含义<return>linespacing</return><info>float</info>定义绘制行距

<comment>Return:</comment>
  <info>array|false</info>  <strong>imageftbbox()</strong> 返回包含 8 个元素的数组，代表构成文本边界框的四个点： 0左下角，X 坐标
               1左下角，Y 坐标2右下角，X 坐标3右下角，Y 坐标4右上角，X 坐标5右上角， Y 坐标6左上角，
               X 坐标7左上角，Y 坐标
               
               无论 <strong>$angle</strong> 如何，这些点都是相对于 text，因此“左上角”意味着在左上角水平地看到文本。
               
               失败时，返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagefttext()</strong>
   * <strong>imagettfbbox()</strong>


id: imagefttext
type: function
doc:
<comment>Description:</comment>
  使用 FreeType 2 字体将文本写入图像
  
  在 PHP 8.0.0 之前，<strong>imagefttext()</strong> 是 <strong>imagettftext()</strong> 的扩展变体，它还支持 <strong>$options</strong>。 自 PHP 8.0.0
  起，<strong>imagettftext()</strong> 是 <strong>imagefttext()</strong> 的别名。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>          由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                           <class>GdImage</class> 对象。
  <info>float</info>    <strong>$size</strong>           字体的尺寸，单位：点（磅）。
  <info>float</info>    <strong>$angle</strong>          以度为单位的角度，0 度表示从左到右阅读文本。较高的值表示逆时针旋转。例
                           如，值为 90 将导致从下到上阅读文本。
  <info>int</info>      <strong>$x</strong>              <strong>$x</strong> 和 <strong>$y</strong> 给出的坐标将定义第一个字符的基点（大致是字符的左下角）。 这与
                           <strong>imagestring()</strong> 不同，其中 <strong>$x</strong> 和 <strong>$y</strong> 定义第一个字符的左上角。例如，“左上
                           角”是 0, 0。
  <info>int</info>      <strong>$y</strong>              y 坐标。设置字体基线的位置，而不是字符的最底部。
  <info>int</info>      <strong>$color</strong>          文本所需颜色的索引，请参阅 <strong>imagecolorexact()</strong>。
  <info>string</info>   <strong>$font_filename</strong>  希望使用的 TrueType 字体的路径。
                           
                           根据 PHP 使用的 GD 库版本，当 <strong>$font_filename</strong> 不以 <return>/</return> 开头时，将追加 <return>.ttf</return>
                           到文件名末尾，库将尝试沿着库定义的字体路径搜索该文件名。
                           
                           在许多情况下，字体与使用的脚本位于同一目录中，以下技巧将缓解任何包含问
                           题。
                           ]]>
  <info>string</info>   <strong>$text</strong>           要插入到图像中的文本。
  <info>array</info>    <strong>$options</strong>        <strong>$options</strong> 可能的数组索引键类型含义<return>linespacing</return><info>float</info>定义绘制行距

<comment>Return:</comment>
  <info>array|false</info>  这个函数返回数组，定义了盒子的四个点，从左下角开始逆时针移动： 0左下 x 坐标1左下 y 坐
               标2右下 x 坐标3右下 x 坐标4右上 x 坐标5右上 x 坐标6左上 x 坐标7左上 y 坐标
               
               失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imageftbbox()</strong>
   * <strong>imagettftext()</strong>


id: imagegammacorrect
type: function
doc:
<comment>Description:</comment>
  对 GD 图像应用伽玛校正
  
  在指定输入/输出伽玛的情况下，对给指定的 gd <strong>$image</strong> 应用伽玛校正。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>         由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                          <class>GdImage</class> 对象。
  <info>float</info>    <strong>$input_gamma</strong>   输入伽玛。
  <info>float</info>    <strong>$output_gamma</strong>  输出伽玛。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: imagegd
type: function
doc:
<comment>Description:</comment>
  将 GD 图像输出到浏览器或文件
  
  输出 GD 图像到指定 <strong>$file</strong>。

<comment>Param:</comment>
  <info>GdImage</info>      <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                       <class>GdImage</class> 对象。
  <info>string|null</info>  <strong>$file</strong>   文件保存的路径或者已打开的流资源（此方法返回后自动关闭该流资源），如果未设置
                       或为 <info>null</info>，将会直接输出原始图象流。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。
        
        如果 libgd 输出图像失败，函数会返回 <info>true</info>。

<comment>See Also:</comment>
   * <strong>imagegd2()</strong>


id: imagegd2
type: function
doc:
<comment>Description:</comment>
  将 GD2 图像输出到浏览器或文件
  
  输出 GD2 图像到指定 <strong>$file</strong>。

<comment>Param:</comment>
  <info>GdImage</info>      <strong>$image</strong>       由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                            <class>GdImage</class> 对象。
  <info>string|null</info>  <strong>$file</strong>        文件保存的路径或者已打开的流资源（此方法返回后自动关闭该流资源），如果未
                            设置或为 <info>null</info>，将会直接输出原始图象流。
  <info>int</info>          <strong>$chunk_size</strong>  块大小。
  <info>int</info>          <strong>$mode</strong>        可以是 <info>IMG_GD2_RAW</info> 或 <info>IMG_GD2_COMPRESSED</info>。默认为 <info>IMG_GD2_RAW</info>。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。
        
        如果 libgd 输出图像失败，函数会返回 <info>true</info>。

<comment>See Also:</comment>
   * <strong>imagegd()</strong>


id: imagegetclip
type: function
doc:
<comment>Description:</comment>
  Get the clipping rectangle
  
  <strong>imagegetclip()</strong> retrieves the current clipping rectangle, i.e. the area beyond which no pixels will
  be drawn.

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。

<comment>Return:</comment>
  <info>array</info>  The function returns an indexed array with the coordinates of the clipping rectangle which
         has the following entries: x-coordinate of the upper left cornery-coordinate of the upper
         left cornerx-coordinate of the lower right cornery-coordinate of the lower right corner
         
         x-coordinate of the upper left corner
         
         y-coordinate of the upper left corner
         
         x-coordinate of the lower right corner
         
         y-coordinate of the lower right corner

<comment>See Also:</comment>
   * <strong>imagesetclip()</strong>


id: imagegetinterpolation
type: function
doc:
<comment>Description:</comment>
  Get the interpolation method
  
  Gets the currently set interpolation method of the <strong>$image</strong>.

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。

<comment>Return:</comment>
  <info>int</info>  Returns the interpolation method.

<comment>See Also:</comment>
   * <strong>imagesetinterpolation()</strong>


id: imagegif
type: function
doc:
<comment>Description:</comment>
  输出图象到浏览器或文件。
  
  <strong>imagegif()</strong> 从图像 <strong>$image</strong> 在 <strong>$file</strong> 中创建 GIF 图像。<strong>$image</strong> 参数是 <strong>imagecreate()</strong> 或 <return>imagecreatefrom*</return>
  函数的返回值。
  
  图像格式为 GIF87a。如果用了 <strong>imagecolortransparent()</strong> 使图像为透明，则其格式为 GIF89a。

<comment>Param:</comment>
  <info>GdImage</info>               <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                                <class>GdImage</class> 对象。
  <info>resource|string|null</info>  <strong>$file</strong>   文件保存的路径或者已打开的流资源（此方法返回后自动关闭该流资源），如
                                果未设置或为 <info>null</info>，将会直接输出原始图象流。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。
        
        如果 libgd 输出图像失败，函数会返回 <info>true</info>。

<comment>See Also:</comment>
   * <strong>imagepng()</strong>
   * <strong>imagewbmp()</strong>
   * <strong>imagejpeg()</strong>
   * <strong>imagetypes()</strong>


id: imagegrabscreen
type: function
doc:
<comment>Description:</comment>
  Captures the whole screen
  
  Grabs a screenshot of the whole screen.
  
  This function is only available on Windows.

<comment>Return:</comment>
  <info>GdImage|false</info>  Returns an image object on success, <info>false</info> on failure.

<comment>See Also:</comment>
   * <strong>imagegrabwindow()</strong>


id: imagegrabwindow
type: function
doc:
<comment>Description:</comment>
  Captures a window
  
  Grabs a window or its client area using a windows handle (HWND property in COM instance)
  
  This function is only available on Windows.

<comment>Param:</comment>
  <info>int</info>   <strong>$handle</strong>       The HWND window ID.
  <info>bool</info>  <strong>$client_area</strong>  Include the client area of the application window.

<comment>Return:</comment>
  <info>GdImage|false</info>  Returns an image object on success, <info>false</info> on failure.

<comment>See Also:</comment>
   * <strong>imagegrabscreen()</strong>


id: imageinterlace
type: function
doc:
<comment>Description:</comment>
  启用或禁用隔行扫描
  
  <strong>imageinterlace()</strong> 打开或关闭隔行扫描位（bit）。
  
  如果设置了隔行扫描位（interlace bit）并且图像被用作 JPEG，将会创建为渐进式 JPEG 图像。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>      由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                       <class>GdImage</class> 对象。
  <info></info>         <strong>$interlace</strong>  如果为 <info>true</info>，则图像开启隔行扫描，如果为 <info>false</info>，否则将关闭隔行扫描。传递 <info>null</info>
                       不会让隔行扫描行为发生改变。

<comment>Return:</comment>
  <info>bool</info>  如果为图像设置了隔行扫描位，则返回 <info>true</info>，否则返回 <info>false</info>。


id: imageistruecolor
type: function
doc:
<comment>Description:</comment>
  检查图像是否为真彩色图像
  
  <strong>imageistruecolor()</strong> 检查 <strong>$image</strong> 图像是否为真彩色图像。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。

<comment>Return:</comment>
  <info>bool</info>  如果 <strong>$image</strong> 是真彩色返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagecreatetruecolor()</strong>
   * <strong>imagepalettetotruecolor()</strong>


id: imagejpeg
type: function
doc:
<comment>Description:</comment>
  输出图象到浏览器或文件。
  
  <strong>imagejpeg()</strong> 从指定 <strong>$image</strong> 图像创建 JPEG 文件。

<comment>Param:</comment>
  <info>GdImage</info>               <strong>$image</strong>    由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                                  <class>GdImage</class> 对象。
  <info>resource|string|null</info>  <strong>$file</strong>     文件保存的路径或者已打开的流资源（此方法返回后自动关闭该流资源），
                                  如果未设置或为 <info>null</info>，将会直接输出原始图象流。
  <info>int</info>                   <strong>$quality</strong>  <strong>$quality</strong> 为可选项，范围从 0（最差质量，文件最小）到 100（最佳质
                                  量，文件最大）。默认值（<return>-1</return>）使用 IJG 默认的质量值（大约 75）。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。
        
        如果 libgd 输出图像失败，函数会返回 <info>true</info>。

<comment>See Also:</comment>
   * <strong>imagepng()</strong>
   * <strong>imagegif()</strong>
   * <strong>imagewbmp()</strong>
   * <strong>imageinterlace()</strong>
   * <strong>imagetypes()</strong>


id: imagelayereffect
type: function
doc:
<comment>Description:</comment>
  设定 alpha 混合标志以使用分层效果
  
  设定 alpha 混色标志以使用分层效果。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>   由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                    <class>GdImage</class> 对象。
  <info>int</info>      <strong>$effect</strong>  下列常量之一： <info>IMG_EFFECT_REPLACE</info> 使用像素替换（等同于将 <info>true</info> 传递给
                    <strong>imagealphablending()</strong>） <info>IMG_EFFECT_ALPHABLEND</info> 使用普通像素混合（等同于将 <info>false</info> 传
                    递给 <strong>imagealphablending()</strong>） <info>IMG_EFFECT_NORMAL</info> 与 <info>IMG_EFFECT_ALPHABLEND</info> 相同。
                    <info>IMG_EFFECT_OVERLAY</info> 叠加（overlay）的效果是黑色背景像素将保持黑色，白色背景像素将
                    保持白色，但灰色背景像素将采用前景像素的颜色。 <info>IMG_EFFECT_MULTIPLY</info> Overlays with
                    a multiply effect.
                    
                    使用像素替换（等同于将 <info>true</info> 传递给 <strong>imagealphablending()</strong>）
                    
                    使用普通像素混合（等同于将 <info>false</info> 传递给 <strong>imagealphablending()</strong>）
                    
                    与 <info>IMG_EFFECT_ALPHABLEND</info> 相同。
                    
                    叠加（overlay）的效果是黑色背景像素将保持黑色，白色背景像素将保持白色，但灰色背
                    景像素将采用前景像素的颜色。
                    
                    Overlays with a multiply effect.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: imageline
type: function
doc:
<comment>Description:</comment>
  绘制直线
  
  在指定的两个点之间画一条直线。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$x1</strong>     第一个点的 x 坐标。
  <info>int</info>      <strong>$y1</strong>     第一个点的 y 坐标。
  <info>int</info>      <strong>$x2</strong>     第二个点的 x 坐标。
  <info>int</info>      <strong>$y2</strong>     第二个点的 y 坐标。
  <info>int</info>      <strong>$color</strong>  直线颜色。颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagecreatetruecolor()</strong>
   * <strong>imagecolorallocate()</strong>


id: imageloadfont
type: function
doc:
<comment>Description:</comment>
  载入新字体
  
  <strong>imageloadfont()</strong> 加载用户定义的点阵字体并返回其标识符。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  字体文件格式目前是二进制且依赖于体系结构。这意味着应该用跟运行 PHP 相同类型 CPU
                     的机器生成字体。
                     
                     字体文件格式字节位置C 数据类型说明byte 0-3int字体中的字符数byte 4-7int 字体中第
                     一个字符的值（通常 32 代表空格） byte 8-11int每个字符宽度的像素值byte
                     12-15int每个字符高度的像素值byte 16-char 字符数据的数组，每字符中每像素 1 字
                     节，一共（nchars*width*height）字节。

<comment>Return:</comment>
  <info>GdFont|false</info>  返回 <class>GdFont</class> 实例， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagefontwidth()</strong>
   * <strong>imagefontheight()</strong>


id: imageopenpolygon
type: function
doc:
<comment>Description:</comment>
  Draws an open polygon
  
  Signature as of PHP 8.0.0 (not supported with named arguments)
  
  Alternative signature (deprecated as of PHP 8.1.0)
  
  <strong>imageopenpolygon()</strong> draws an open polygon on the given <strong>$image</strong>. Contrary to <strong>imagepolygon()</strong>, no line
  is drawn between the last and the first point.

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>       由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                        <class>GdImage</class> 对象。
  <info>array</info>    <strong>$points</strong>      An array containing the polygon's vertices, e.g.: points[0]= x0points[1]=
                        y0points[2]= x1points[3]= y1
  <info>int</info>      <strong>$num_points</strong>  Total number of points (vertices), which must be at least 3.
                        
                        If this parameter is omitted as per the second signature, <strong>$points</strong> must have
                        an even number of elements, and <strong>$num_points</strong> is assumed to be
                        count($points)/2.
  <info>int</info>      <strong>$color</strong>       颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagepolygon()</strong>


id: imagepalettecopy
type: function
doc:
<comment>Description:</comment>
  将调色板从一个图像复制到另一个
  
  <strong>imagepalettecopy()</strong> 把调色板从 <strong>$src</strong> 图像复制到 <strong>$dst</strong> 图像。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$dst</strong>  目标图像对象。
  <info>GdImage</info>  <strong>$src</strong>  源图像对象。

<comment>Return:</comment>
  <info>void</info>  没有返回值。


id: imagepalettetotruecolor
type: function
doc:
<comment>Description:</comment>
  Converts a palette based image to true color
  
  Converts a palette based image, created by functions like  <strong>imagecreate()</strong> to a true color image,
  like  <strong>imagecreatetruecolor()</strong>.

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the convertion was complete, or if the source image already  is a true color
        image, otherwise <info>false</info> is returned.

<comment>See Also:</comment>
   * <strong>imagecreatetruecolor()</strong>
   * <strong>imageistruecolor()</strong>


id: imagepng
type: function
doc:
<comment>Description:</comment>
  将 PNG 图像输出到浏览器或文件
  
  从指定 <strong>$image</strong> 输出或保存 PNG 图像。

<comment>Param:</comment>
  <info>GdImage</info>               <strong>$image</strong>    由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                                  <class>GdImage</class> 对象。
  <info>resource|string|null</info>  <strong>$file</strong>     文件保存的路径或者已打开的流资源（此方法返回后自动关闭该流资源），
                                  如果未设置或为 <info>null</info>，将会直接输出原始图象流。
                                  
                                  如果未使用 <strong>$quality</strong> 和 <strong>$filters</strong> 参数，则 <info>null</info> 无效。
  <info>int</info>                   <strong>$quality</strong>  压缩级别：从 0（不压缩）到 9。 默认值（<return>-1</return>）使用 zlib 压缩默认值。
                                  有关详细信息，请参阅 zlib 手册。
  <info>int</info>                   <strong>$filters</strong>  允许减小 PNG 文件的大小。它是位掩码字段，可以设置为任意
                                  <return>PNG_FILTER_XXX</return> 常量的组合。<info>PNG_NO_FILTER</info> 或 <info>PNG_ALL_FILTERS</info> 也可分
                                  别用于禁用或激活所有过滤器。 默认值（<return>-1</return>）禁用过滤。
                                  
                                  系统 libgd 忽略 <strong>$filters</strong> 参数。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。
        
        如果 libgd 输出图像失败，函数会返回 <info>true</info>。

<comment>See Also:</comment>
   * <strong>imagegif()</strong>
   * <strong>imagewbmp()</strong>
   * <strong>imagejpeg()</strong>
   * <strong>imagetypes()</strong>
   * <strong>imagesavealpha()</strong>


id: imagepolygon
type: function
doc:
<comment>Description:</comment>
  绘制多边形
  
  自 PHP 8.0.0 起的签名（不支持命名参数）
  
  替代签名（从 PHP 8.1.0 开始弃用）
  
  <strong>imagepolygon()</strong> 在指定 <strong>$image</strong> 中创建多边形。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>       由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                        <class>GdImage</class> 对象。
  <info>array</info>    <strong>$points</strong>      包含多边形顶点的数组，例如： points[0]= x0points[1]= y0points[2]=
                        x1points[3]= y1
  <info>int</info>      <strong>$num_points</strong>  点（顶点）的总数，必须最少为 3。
                        
                        如果根据第二个签名省略此参数，则 <strong>$points</strong> 必须具有偶数个元素，并且假定
                        <strong>$num_points</strong> 为 count($points)/2。
  <info>int</info>      <strong>$color</strong>       颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagefilledpolygon()</strong>
   * <strong>imageopenpolygon()</strong>
   * <strong>imagecreate()</strong>
   * <strong>imagecreatetruecolor()</strong>


id: imagerectangle
type: function
doc:
<comment>Description:</comment>
  绘制矩形
  
  <strong>imagerectangle()</strong> 创建从指定坐标开始的矩形。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$x1</strong>     左上角 x 坐标。
  <info>int</info>      <strong>$y1</strong>     左上角 y 坐标。 0, 0 是图像左上角。
  <info>int</info>      <strong>$x2</strong>     右下角 x 坐标。
  <info>int</info>      <strong>$y2</strong>     右下角 y 坐标。
  <info>int</info>      <strong>$color</strong>  颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: imageresolution
type: function
doc:
<comment>Description:</comment>
  Get or set the resolution of the image
  
  <strong>imageresolution()</strong> allows to set and get the resolution of an image in DPI (dots per inch). If the
  optional parameters are <info>null</info>, the current resolution is returned as an indexed array. If only
  <strong>$resolution_x</strong> is not <info>null</info>, the horizontal and vertical resolution are set to this value. If none
  of the optional parameters are <info>null</info>, the horizontal and vertical resolution are set to these
  values, respectively.
  
  The resolution is only used as meta information when images are read from and written to formats
  supporting this kind of information (curently PNG and JPEG). It does not affect any drawing
  operations. The default resolution for new images is 96 DPI.

<comment>Param:</comment>
  <info>GdImage</info>   <strong>$image</strong>         由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                           <class>GdImage</class> 对象。
  <info>int|null</info>  <strong>$resolution_x</strong>  The horizontal resolution in DPI.
  <info>int|null</info>  <strong>$resolution_y</strong>  The vertical resolution in DPI.

<comment>Return:</comment>
  <info>array|bool</info>  When used as getter, it returns an indexed array of the horizontal and vertical
              resolution on success,  或者在失败时返回 <info>false</info>. When used as setter, it returns <info>true</info>
              on success,  或者在失败时返回 <info>false</info>.


id: imagerotate
type: function
doc:
<comment>Description:</comment>
  用给定角度旋转图像
  
  将 <strong>$image</strong> 图像按指定 <strong>$angle</strong> 角度旋转。
  
  旋转的中心是图像的中心，旋转后的图像可能与原始图像具有不同的尺寸。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>             由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                              <class>GdImage</class> 对象。
  <info>float</info>    <strong>$angle</strong>             旋转角度，以度为单位。旋转角度是为逆时针旋转图像的度数。
  <info>int</info>      <strong>$background_color</strong>  指定旋转后未覆盖区域的颜色

<comment>Return:</comment>
  <info>GdImage|false</info>  返回旋转图像后的图像对象， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagesetinterpolation()</strong>


id: imagesavealpha
type: function
doc:
<comment>Description:</comment>
  保存图像时是否保留完整的 alpha 通道信息
  
  <strong>imagesavealpha()</strong> 设置标记，确定在保存图像时是否保存完整的 alpha 通道信息（与单一透明色相反）。 这
  仅支持支持完整 alpha 通道信息的图像格式，即 <return>PNG</return>、<return>WebP</return> 和 <return>AVIF</return>。 <strong>imagesavealpha()</strong> is only
  meaningful for <return>PNG</return> images, since the full alpha channel is always saved for <return>WebP</return> and <return>AVIF</return>. It is
  not recommended to rely on this behavior, as it may change in the future. Thus, <strong>imagesavealpha()</strong>
  should be called deliberately also for <return>WebP</return> and <return>AVIF</return> images.
  
  <strong>imagesavealpha()</strong> is only meaningful for <return>PNG</return> images, since the full alpha channel is always saved
  for <return>WebP</return> and <return>AVIF</return>. It is not recommended to rely on this behavior, as it may change in the future.
  Thus, <strong>imagesavealpha()</strong> should be called deliberately also for <return>WebP</return> and <return>AVIF</return> images.
  
  必须禁用 alpha 混合（imagealphablending($im, false)），以首先保留 alpha 通道。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>   由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                    <class>GdImage</class> 对象。
  <info>bool</info>     <strong>$enable</strong>  是否保存透明（alpha）通道。默认 <info>false</info>。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagealphablending()</strong>


id: imagescale
type: function
doc:
<comment>Description:</comment>
  Scale an image using the given new width and height
  
  <strong>imagescale()</strong> scales an image using the given interpolation algorithm.
  
  Unlike many of other image functions, <strong>imagescale()</strong> does not modify the passed <strong>$image</strong>; instead, a
  new image is returned.

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>   由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                    <class>GdImage</class> 对象。
  <info>int</info>      <strong>$width</strong>   The width to scale the image to.
  <info>int</info>      <strong>$height</strong>  The height to scale the image to. If omitted or negative, the aspect ratio will
                    be preserved.
  <info>int</info>      <strong>$mode</strong>    One of <info>IMG_NEAREST_NEIGHBOUR</info>, <info>IMG_BILINEAR_FIXED</info>, <info>IMG_BICUBIC</info>, <info>IMG_BICUBIC_FIXED</info>
                    or anything else (will use two pass). <info>IMG_WEIGHTED4</info> is not yet supported.
                    
                    <info>IMG_WEIGHTED4</info> is not yet supported.

<comment>Return:</comment>
  <info>GdImage|false</info>  Return the scaled image object on success 或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>imagecopyresized()</strong>
   * <strong>imagecopyresampled()</strong>


id: imagesetbrush
type: function
doc:
<comment>Description:</comment>
  为线条设置笔刷图像
  
  当用特殊的颜色 <return>IMG_COLOR_BRUSHED</return> 或 <return>IMG_COLOR_STYLEDBRUSHED</return> 绘制时，<strong>imagesetbrush()</strong> 通过所有的线条
  函数设置要使用的笔刷图像。【注：使用笔刷图像，所画的线是由 <strong>$brush</strong> 所代表的图像构成的。请参考并尝试
  运行 <strong>imagesetstyle()</strong> 中的例子以帮助理解。】
  
  笔刷完成后不需要采取什么特殊动作，但如果要销毁笔刷图像（或让 PHP 销毁），不能使用
  <info>IMG_COLOR_BRUSHED</info> 或 <info>IMG_COLOR_STYLEDBRUSHED</info> 颜色，除非设置了新的笔刷图像。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>GdImage</info>  <strong>$brush</strong>  图像对象。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: imagesetclip
type: function
doc:
<comment>Description:</comment>
  Set the clipping rectangle
  
  <strong>imagesetclip()</strong> sets the current clipping rectangle, i.e. the area beyond which no pixels will be
  drawn.

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$x1</strong>     The x-coordinate of the upper left corner.
  <info>int</info>      <strong>$y1</strong>     The y-coordinate of the upper left corner.
  <info>int</info>      <strong>$x2</strong>     The x-coordinate of the lower right corner.
  <info>int</info>      <strong>$y2</strong>     The y-coordinate of the lower right corner.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagegetclip()</strong>


id: imagesetinterpolation
type: function
doc:
<comment>Description:</comment>
  Set the interpolation method
  
  Sets the interpolation method, setting an interpolation method affects the rendering  of various
  functions in GD, such as the <strong>imagerotate()</strong> function.

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>   由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                    <class>GdImage</class> 对象。
  <info>int</info>      <strong>$method</strong>  The interpolation method, which can be one of the following: <info>IMG_BELL</info>: Bell
                    filter. <info>IMG_BESSEL</info>: Bessel filter. <info>IMG_BICUBIC</info>: Bicubic interpolation.
                    <info>IMG_BICUBIC_FIXED</info>: Fixed point implementation of the bicubic interpolation.
                    <info>IMG_BILINEAR_FIXED</info>: Fixed point implementation of the  bilinear interpolation
                    (<return>default (also on image creation)</return>). <info>IMG_BLACKMAN</info>: Blackman window function.
                    <info>IMG_BOX</info>: Box blur filter. <info>IMG_BSPLINE</info>: Spline interpolation. <info>IMG_CATMULLROM</info>:
                    Cubic Hermite spline interpolation. <info>IMG_GAUSSIAN</info>: Gaussian function.
                    <info>IMG_GENERALIZED_CUBIC</info>: Generalized cubic spline fractal interpolation.
                    <info>IMG_HERMITE</info>: Hermite interpolation. <info>IMG_HAMMING</info>: Hamming filter. <info>IMG_HANNING</info>:
                    Hanning filter. <info>IMG_MITCHELL</info>: Mitchell filter. <info>IMG_POWER</info>: Power interpolation.
                    <info>IMG_QUADRATIC</info>: Inverse quadratic interpolation. <info>IMG_SINC</info>: Sinc function.
                    <info>IMG_NEAREST_NEIGHBOUR</info>: Nearest neighbour interpolation. <info>IMG_WEIGHTED4</info>: Weighting
                    filter. <info>IMG_TRIANGLE</info>: Triangle interpolation.
                    
                    <info>IMG_BELL</info>: Bell filter.
                    
                    <info>IMG_BESSEL</info>: Bessel filter.
                    
                    <info>IMG_BICUBIC</info>: Bicubic interpolation.
                    
                    <info>IMG_BICUBIC_FIXED</info>: Fixed point implementation of the bicubic interpolation.
                    
                    <info>IMG_BILINEAR_FIXED</info>: Fixed point implementation of the  bilinear interpolation
                    (<return>default (also on image creation)</return>).
                    
                    <info>IMG_BLACKMAN</info>: Blackman window function.
                    
                    <info>IMG_BOX</info>: Box blur filter.
                    
                    <info>IMG_BSPLINE</info>: Spline interpolation.
                    
                    <info>IMG_CATMULLROM</info>: Cubic Hermite spline interpolation.
                    
                    <info>IMG_GAUSSIAN</info>: Gaussian function.
                    
                    <info>IMG_GENERALIZED_CUBIC</info>: Generalized cubic spline fractal interpolation.
                    
                    <info>IMG_HERMITE</info>: Hermite interpolation.
                    
                    <info>IMG_HAMMING</info>: Hamming filter.
                    
                    <info>IMG_HANNING</info>: Hanning filter.
                    
                    <info>IMG_MITCHELL</info>: Mitchell filter.
                    
                    <info>IMG_POWER</info>: Power interpolation.
                    
                    <info>IMG_QUADRATIC</info>: Inverse quadratic interpolation.
                    
                    <info>IMG_SINC</info>: Sinc function.
                    
                    <info>IMG_NEAREST_NEIGHBOUR</info>: Nearest neighbour interpolation.
                    
                    <info>IMG_WEIGHTED4</info>: Weighting filter.
                    
                    <info>IMG_TRIANGLE</info>: Triangle interpolation.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagegetinterpolation()</strong>


id: imagesetpixel
type: function
doc:
<comment>Description:</comment>
  设置单个像素
  
  <strong>imagesetpixel()</strong> 在指定坐标处绘制像素。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>int</info>      <strong>$x</strong>      x 坐标。
  <info>int</info>      <strong>$y</strong>      y 坐标。
  <info>int</info>      <strong>$color</strong>  颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagecreatetruecolor()</strong>
   * <strong>imagecolorallocate()</strong>
   * <strong>imagecolorat()</strong>


id: imagesetstyle
type: function
doc:
<comment>Description:</comment>
  设定线条的样式
  
  <strong>imagesetstyle()</strong> 设定所有线条函数（例如 <strong>imageline()</strong> 和 <strong>imagepolygon()</strong>）在使用特殊颜色
  <info>IMG_COLOR_STYLED</info> 或者颜色为 <info>IMG_COLOR_STYLEDBRUSHED</info> 绘制图像线条的样式。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>array</info>    <strong>$style</strong>  像素颜色组成的数组。可以通过常量 <info>IMG_COLOR_TRANSPARENT</info> 来添加透明像素。注意
                   <strong>$style</strong> 不能是空 <info>array</info>。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagesetbrush()</strong>
   * <strong>imageline()</strong>


id: imagesetthickness
type: function
doc:
<comment>Description:</comment>
  设定画线的粗细
  
  <strong>imagesetthickness()</strong> 将绘制矩形、多边形、圆弧等绘制的线条粗细设置为 <strong>$thickness</strong> 像素。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>      由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                       <class>GdImage</class> 对象。
  <info>int</info>      <strong>$thickness</strong>  粗细，以像素为单位。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: imagesettile
type: function
doc:
<comment>Description:</comment>
  设置要填充的平铺图像
  
  当使用特殊颜色 <info>IMG_COLOR_TILED</info>时，<strong>imagesettile()</strong> 设置所有区域填充函数（比如 <strong>imagefill()</strong> 和
  <strong>imagefilledpolygon()</strong>）要使用的平铺图像。
  
  平铺是指使用重复模式填充区域的图像。任何 GD 图像都可以用于平铺，并且通过使用
  <strong>imagecolortransparent()</strong> 来设定平铺图像的透明颜色索引，可以创建允许底层区域的某些部分透过的平铺。
  
  平铺完成后不需要采取什么特殊动作，但如果要销毁平铺图像（或让 PHP 销毁），不能使用 <info>IMG_COLOR_TILED</info>
  颜色，除非设置了新的平铺图像。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。
  <info>GdImage</info>  <strong>$tile</strong>   用作平铺的图像对象。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: imagestring
type: function
doc:
<comment>Description:</comment>
  水平绘制字符串
  
  在指定坐标处水平绘制 <strong>$string</strong>。

<comment>Param:</comment>
  <info>GdImage</info>     <strong>$image</strong>   由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                       <class>GdImage</class> 对象。
  <info>GdFont|int</info>  <strong>$font</strong>    取值对于内建的 latin2 编码字体可以是：1、2、3、4、5(更高的数字对应更大的字
                       体)，
                       或是通过 <strong>imageloadfont()</strong> 返回的 <class>GdFont</class> 实例。
  <info>int</info>         <strong>$x</strong>       左下角的 x 坐标。
  <info>int</info>         <strong>$y</strong>       左下角的 y 坐标。
  <info>string</info>      <strong>$string</strong>  要写入的字符串。
  <info>int</info>         <strong>$color</strong>   颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagestringup()</strong>
   * <strong>imageloadfont()</strong>
   * <strong>imagettftext()</strong>


id: imagestringup
type: function
doc:
<comment>Description:</comment>
  垂直绘制字符串
  
  在指定坐标处垂直绘制 <strong>$string</strong>。

<comment>Param:</comment>
  <info>GdImage</info>     <strong>$image</strong>   由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                       <class>GdImage</class> 对象。
  <info>GdFont|int</info>  <strong>$font</strong>    取值对于内建的 latin2 编码字体可以是：1、2、3、4、5(更高的数字对应更大的字
                       体)，
                       或是通过 <strong>imageloadfont()</strong> 返回的 <class>GdFont</class> 实例。
  <info>int</info>         <strong>$x</strong>       左下角的 x 坐标。
  <info>int</info>         <strong>$y</strong>       左下角的 y 坐标。
  <info>string</info>      <strong>$string</strong>  要写入的字符串。
  <info>int</info>         <strong>$color</strong>   颜色标识符使用 <strong>imagecolorallocate()</strong> 创建。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagestring()</strong>
   * <strong>imageloadfont()</strong>


id: imagesx
type: function
doc:
<comment>Description:</comment>
  取得图像宽度
  
  返回指定 <strong>$image</strong> 对象的宽度。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。

<comment>Return:</comment>
  <info>int</info>  返回 <strong>$image</strong> 的宽度。

<comment>See Also:</comment>
   * <strong>imagecreatetruecolor()</strong>
   * <strong>getimagesize()</strong>
   * <strong>imagesy()</strong>


id: imagesy
type: function
doc:
<comment>Description:</comment>
  取得图像高度
  
  返回指定 <strong>$image</strong> 对象的高度。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>  由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                   <class>GdImage</class> 对象。

<comment>Return:</comment>
  <info>int</info>  返回 <strong>$image</strong> 的高度。

<comment>See Also:</comment>
   * <strong>imagecreatetruecolor()</strong>
   * <strong>getimagesize()</strong>
   * <strong>imagesx()</strong>


id: imagetruecolortopalette
type: function
doc:
<comment>Description:</comment>
  将真彩色图像转换为调色板图像
  
  <strong>imagetruecolortopalette()</strong>将一幅真彩色图像转换为调色板图像。本函数的代码原本是从独立的 JPEG 小组库
  代码中提取出来的，非常出色。此代码被修改以在结果调色板中保留尽可能多的 alpha 通道信息以及尽可能多
  的颜色。但并没有达到期望的效果。通常最好生成真彩色图像输出，这样可以保证得到最高的输出质量。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>       由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                        <class>GdImage</class> 对象。
  <info>bool</info>     <strong>$dither</strong>      指明图像是否被抖动（dithered），如果为 <info>true</info> 则图像将被抖动使图像中的斑点更多
                        但是颜色更接近。
  <info>int</info>      <strong>$num_colors</strong>  设定调色板中被保留的颜色的最大数目。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: imagettfbbox
type: function
doc:
<comment>Description:</comment>
  取得使用 TrueType 字体的文本的边界框
  
  本函数计算并返回 TrueType 文本的边界框的像素大小。
  
  在 PHP 8.0.0 之前，<strong>imageftbbox()</strong> 是 <strong>imagettfbbox()</strong> 的扩展变体，额外支持 <strong>$extrainfo</strong>。自 PHP 8.0.0
  起，<strong>imagettfbbox()</strong> 是 <strong>imageftbbox()</strong> 的别名。

<comment>Param:</comment>
  <info>float</info>   <strong>$size</strong>      字体的尺寸，单位：点（磅）。
  <info>float</info>   <strong>$angle</strong>     测量字符串的角度（以度为单位）。
  <info></info>        <strong>$fontfile</strong>  想要使用的 TrueType 字体的路径。
                     
                     根据 PHP 所使用的 GD 库版本，当 <strong>$fontfile</strong> 没有以 <return>/</return> 开头时则 <return>.ttf</return> 将追加到文件名
                     之后，并且会在库定义字体路径中尝试搜索该文件名。
                     
                     当使用的 GD 库版本低于 2.0.18 时，<return>space</return>  字符而不是分号将被用来作为不同字体文件
                     的“路径分隔符”。不小心使用了此特性将会导致一条警告信息：<return>Warning: Could not
                     find/open font</return>。对受影响的版本来说唯一解决方案就是将字体移动到不包含空格的路
                     径。
                     
                     很多情况下字体与使用字体的脚本在同一个目录中，下面的小技巧可以缓解 include 的问
                     题。
                     ]]>
                     
                     注意 open_basedir 不 适用于 <strong>$fontfile</strong>。
  <info>string</info>  <strong>$string</strong>    要测量的字符串。

<comment>Return:</comment>
  <info>array|false</info>  <strong>imagettfbbox()</strong> 成功时返回包含 8 个元素的数组，代表构成文本边界框的四个点。失败时返回
               <info>false</info>。 键内容0左下角,X 位置1左下角，Y 位置2右下角，X 位置3右下角，Y 位置4右上角，X
               位置5右上角，Y 位置6左上角，X 位置7左上角，Y 位置
               
               这些点相对于 text，与 <strong>$angle</strong> 无关，因此“左上角”意味着可以在左上角看到横排文本。

<comment>See Also:</comment>
   * <strong>imagettftext()</strong>
   * <strong>imageftbbox()</strong>


id: imagettftext
type: function
doc:
<comment>Description:</comment>
  用 TrueType 字体向图像写入文本
  
  使用 TrueType 字体将指定的 <strong>$text</strong> 写入图像。
  
  PHP 8.0.0 之前，<strong>imagefttext()</strong> 是 <strong>imagettftext()</strong> 的扩展变体，额外支持 <strong>$extrainfo</strong>。自 PHP 8.0.0 起，
  <strong>imagettftext()</strong> 是 <strong>imagefttext()</strong> 的别名。

<comment>Param:</comment>
  <info>GdImage</info>  <strong>$image</strong>     由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                      <class>GdImage</class> 对象。
  <info>float</info>    <strong>$size</strong>      字体的尺寸，单位：点（磅）。
  <info>float</info>    <strong>$angle</strong>     角度制表示的角度，0 度为从左向右读的文本。较高数值表示逆时针旋转。例如 90 度表
                      示从下向上读的文本。
  <info>int</info>      <strong>$x</strong>         由 <strong>$x</strong>，<strong>$y</strong> 所表示的坐标定义了第一个字符的基本点（大概是字符的左下角）。这和
                      <strong>imagestring()</strong> 不同，其中 <strong>$x</strong>，<strong>$y</strong> 定义了第一个字符的左上角。例如“top left”为 0,
                      0。
  <info>int</info>      <strong>$y</strong>         Y 坐标。它设定了字体基线的位置，不是字符的最底端。
  <info>int</info>      <strong>$color</strong>     颜色索引。使用负的颜色索引值具有关闭防锯齿的效果。见 <strong>imagecolorallocate()</strong>。
  <info></info>         <strong>$fontfile</strong>  想要使用的 TrueType 字体的路径。
                      
                      根据 PHP 所使用的 GD 库版本，当 <strong>$fontfile</strong> 没有以 <return>/</return> 开头时则 <return>.ttf</return> 将追加到文件
                      名之后，并且会在库定义字体路径中尝试搜索该文件名。
                      
                      当使用的 GD 库版本低于 2.0.18 时，<return>space</return>  字符而不是分号将被用来作为不同字体文
                      件的“路径分隔符”。不小心使用了此特性将会导致一条警告信息：<return>Warning: Could not
                      find/open font</return>。对受影响的版本来说唯一解决方案就是将字体移动到不包含空格的路
                      径。
                      
                      很多情况下字体与使用字体的脚本在同一个目录中，下面的小技巧可以缓解 include 的
                      问题。
                      ]]>
                      
                      注意 open_basedir 不 适用于 <strong>$fontfile</strong>。
  <info>string</info>   <strong>$text</strong>      UTF-8 编码的文本字符串。
                      
                      可以包含十进制数字化字符表示（形式为：&#8364;）来访问字体中超过位置 127 的字
                      符，支持十六进制格式（如 &#xA9;）。UTF-8 编码的字符串可以直接传递。
                      
                      不支持命名实体，比如 &copy;。可以考虑使用 <strong>html_entity_decode()</strong> 将这些命名实体
                      解码为 UTF-8 字符。
                      
                      如果字符串中使用了字体不支持的字符，则将用空心矩形替换该字符。

<comment>Return:</comment>
  <info>array|false</info>  返回含有 8 个元素的数组，代表构成文本外框的四个点，顺序为左下、右下、右上、左上。无论
               角度如何，这些点是相对于文本的，因此“左上角”指的是以水平方向看文字时的左上角。错误时
               返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imagettfbbox()</strong>
   * <strong>imagefttext()</strong>


id: imagetypes
type: function
doc:
<comment>Description:</comment>
  返回 PHP 内置支持的图像类型
  
  返回当前安装的 PHP 支持的图片类型。

<comment>Return:</comment>
  <info>int</info>  返回链接到 PHP 的 GD 版本支持的图片类型相对应的位字段。返回以下位：<info>IMG_AVIF</info> | <info>IMG_BMP</info> |
       <info>IMG_GIF</info> | <info>IMG_JPG</info> | <info>IMG_PNG</info> | <info>IMG_WBMP</info> |  <info>IMG_XPM</info> | <info>IMG_WEBP</info>.

<comment>See Also:</comment>
   * <strong>gd_info()</strong>


id: imagewbmp
type: function
doc:
<comment>Description:</comment>
  输出图象到浏览器或文件。
  
  <strong>imagewbmp()</strong> 输出或保存为指定 <strong>$image</strong> 的 WBMP 版本。

<comment>Param:</comment>
  <info>GdImage</info>               <strong>$image</strong>             由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                                           <class>GdImage</class> 对象。
  <info>resource|string|null</info>  <strong>$file</strong>              文件保存的路径或者已打开的流资源（此方法返回后自动关闭该
                                           流资源），如果未设置或为 <info>null</info>，将会直接输出原始图象流。
  <info>int|null</info>              <strong>$foreground_color</strong>  使用此参数从 <strong>imagecolorallocate()</strong> 获得的标识符来设置前景
                                           色。默认前景色为黑色。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。
        
        如果 libgd 输出图像失败，函数会返回 <info>true</info>。

<comment>See Also:</comment>
   * <strong>image2wbmp()</strong>
   * <strong>imagepng()</strong>
   * <strong>imagegif()</strong>
   * <strong>imagejpeg()</strong>
   * <strong>imagetypes()</strong>


id: imagewebp
type: function
doc:
<comment>Description:</comment>
  将 WebP 格式的图像输出到浏览器或文件
  
  输出或保存为指定 <strong>$image</strong> 的 WebP 版本。

<comment>Param:</comment>
  <info>GdImage</info>               <strong>$image</strong>    由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                                  <class>GdImage</class> 对象。
  <info>resource|string|null</info>  <strong>$file</strong>     文件保存的路径或者已打开的流资源（此方法返回后自动关闭该流资源），
                                  如果未设置或为 <info>null</info>，将会直接输出原始图象流。
  <info>int</info>                   <strong>$quality</strong>  <strong>$quality</strong> 范围从 0（最低质量，最小文件体积）到 100（最好质量, 最大
                                  文件体积）。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。
        
        如果 libgd 输出图像失败，函数会返回 <info>true</info>。


id: imagexbm
type: function
doc:
<comment>Description:</comment>
  输出 XBM 图像到浏览器或文件
  
  输出或保存 <strong>$image</strong> 的 XBM 版本。
  
  <strong>imagexbm()</strong> 不应用任何填充，因此图片宽度必须是 8 的倍数。从 PHP 7.0.9 起此限制不再适用。

<comment>Param:</comment>
  <info>GdImage</info>      <strong>$image</strong>             由图象创建函数(例如<strong>imagecreatetruecolor()</strong>)返回的 
                                  <class>GdImage</class> 对象。
  <info>string|null</info>  <strong>$filename</strong>          <info>string</info> 格式，给出保存到文件的路径。如果为 <info>null</info>，将直接输出原始图像
                                  流。
                                  
                                  The <strong>$filename</strong> (without the .xbm extension) is also used for the C
                                  identifiers of the XBM, whereby non alphanumeric characters of the
                                  current locale are substituted by underscores. If <strong>$filename</strong> is set
                                  to <info>null</info>, <return>image</return> is used to build the C identifiers.
  <info>int|null</info>     <strong>$foreground_color</strong>  通过设置从 <strong>imagecolorallocate()</strong> 获得的标识符来使用此参数设置前景
                                  色。默认前景色是黑色。所有的其它颜色都视为背景。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。
        
        如果 libgd 输出图像失败，函数会返回 <info>true</info>。


id: imagick::COMPOSITE_EXCLUSION
type: constant
doc:
<comment>Description:</comment>
  Produces an effect similar to that of imagick::COMPOSITE_DIFFERENCE, but appears as lower contrast


id: imagick::RESOURCETYPE_AREA
type: constant
doc:
<comment>Description:</comment>
  Set the maximum width * height of an image that can reside in the pixel cache memory.


id: imagick::RESOURCETYPE_DISK
type: constant
doc:
<comment>Description:</comment>
  Set maximum amount of disk space in bytes permitted for use by the pixel cache.


id: imagick::RESOURCETYPE_MAP
type: constant
doc:
<comment>Description:</comment>
  Set maximum amount of memory map in bytes to allocate for the pixel cache.


id: imagick::RESOURCETYPE_MEMORY
type: constant
doc:
<comment>Description:</comment>
  Set maximum amount of memory in bytes to allocate for the pixel cache from the heap.


id: imagick::RESOURCETYPE_THREAD
type: constant
doc:
<comment>Description:</comment>
  Set maximum parallel threads. 此常量可用仅当Imagick编译于ImageMagick版本 6.7.8 or higher.


id: imap_8bit
type: function
doc:
<comment>Description:</comment>
  Convert an 8bit string to a quoted-printable string
  
  Convert an 8bit string to a quoted-printable string (according to RFC2045, section 6.7).

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  The 8bit string to convert

<comment>Return:</comment>
  <info>string|false</info>  Returns a quoted-printable string,  或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>imap_qprint()</strong>


id: imap_alerts
type: function
doc:
<comment>Description:</comment>
  Returns all IMAP alert messages that have occurred
  
  Returns all of the IMAP alert messages generated since the last <strong>imap_alerts()</strong> call, or the
  beginning of the page.
  
  When <strong>imap_alerts()</strong> is called, the alert stack is subsequently cleared. The IMAP specification
  requires that these messages be passed to the user.

<comment>Return:</comment>
  <info>array|false</info>  Returns an array of all of the IMAP alert messages generated or <info>false</info> if no alert
               messages are available.

<comment>See Also:</comment>
   * <strong>imap_errors()</strong>


id: imap_append
type: function
doc:
<comment>Description:</comment>
  Append a string message to a specified mailbox
  
  Appends a string <strong>$message</strong> to the specified <strong>$folder</strong>.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>           <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$folder</strong>         The mailbox name, see <strong>imap_open()</strong> for more information
                                   
                                   Passing untrusted data to this parameter is insecure, unless
                                   imap.enable_insecure_rsh is disabled.
  <info>string</info>           <strong>$message</strong>        The message to be append, as a string
                                   
                                   When talking to the Cyrus IMAP server, you must use "\r\n" as
                                   your end-of-line terminator instead of "\n" or the operation will
                                   fail
  <info>string|null</info>      <strong>$options</strong>        If provided, the <strong>$options</strong> will also be written to the <strong>$folder</strong>
  <info>string|null</info>      <strong>$internal_date</strong>  If this parameter is set, it will set the INTERNALDATE on the
                                   appended message.  The parameter should be a date string that
                                   conforms to the rfc2060 specifications for a date_time value.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: imap_base64
type: function
doc:
<comment>Description:</comment>
  Decode BASE64 encoded text
  
  Decodes the given BASE-64 encoded <strong>$string</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  The encoded text

<comment>Return:</comment>
  <info>string|false</info>  Returns the decoded message as a string,  或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>imap_binary()</strong>
   * <strong>base64_encode()</strong>
   * <strong>base64_decode()</strong>
   * RFC2045, Section 6.8


id: imap_binary
type: function
doc:
<comment>Description:</comment>
  Convert an 8bit string to a base64 string
  
  Convert an 8bit string to a base64 string according to RFC2045, Section 6.8.

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  The 8bit string

<comment>Return:</comment>
  <info>string|false</info>  Returns a base64 encoded string,  或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>imap_base64()</strong>


id: imap_body
type: function
doc:
<comment>Description:</comment>
  Read the message body
  
  <strong>imap_body()</strong> returns the body of the message, numbered <strong>$message_num</strong> in the current mailbox.
  
  <strong>imap_body()</strong> will only return a verbatim copy of the message body. To extract single parts of a
  multipart MIME-encoded message you have to use <strong>imap_fetchstructure()</strong> to analyze its structure and
  <strong>imap_fetchbody()</strong> to extract a copy of a single body component.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>         <class>IMAP\Connection</class> 实例。
  <info>int</info>              <strong>$message_num</strong>  The message number
  <info>int</info>              <strong>$flags</strong>        The optional <strong>$flags</strong> are a bit mask with one or more of the
                                 following: <info>FT_UID</info> - The <strong>$message_num</strong> is a UID <info>FT_PEEK</info> - Do not set
                                 the \Seen flag if not already set <info>FT_INTERNAL</info> - The return string
                                 is in internal format, will not canonicalize to CRLF.
                                 
                                 <info>FT_UID</info> - The <strong>$message_num</strong> is a UID
                                 
                                 <info>FT_PEEK</info> - Do not set the \Seen flag if not already set
                                 
                                 <info>FT_INTERNAL</info> - The return string is in internal format, will not
                                 canonicalize to CRLF.

<comment>Return:</comment>
  <info>string|false</info>  Returns the body of the specified message, as a string,  或者在失败时返回 <info>false</info>.


id: imap_bodystruct
type: function
doc:
<comment>Description:</comment>
  Read the structure of a specified body section of a specific message
  
  Read the structure of a specified body section of a specific message.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>         <class>IMAP\Connection</class> 实例。
  <info>int</info>              <strong>$message_num</strong>  The message number
  <info>string</info>           <strong>$section</strong>      The body section to read

<comment>Return:</comment>
  <info>stdClass|false</info>  Returns the information in an object,  或者在失败时返回 <info>false</info>. For a detailed
                  description of the object structure and properties see  <strong>imap_fetchstructure()</strong>.

<comment>See Also:</comment>
   * <strong>imap_fetchstructure()</strong>


id: imap_check
type: function
doc:
<comment>Description:</comment>
  Check current mailbox
  
  Checks information about the current mailbox.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>  <class>IMAP\Connection</class> 实例。

<comment>Return:</comment>
  <info>stdClass|false</info>  Returns the information in an object with following properties: <info>Date</info> - current
                  system time formatted according to RFC2822 <info>Driver</info> - protocol used to access this
                  mailbox: POP3, IMAP, NNTP <info>Mailbox</info> - the mailbox name <info>Nmsgs</info> - number of messages in
                  the mailbox <info>Recent</info> - number of recent messages in the mailbox
                  
                  <info>Date</info> - current system time formatted according to RFC2822
                  
                  <info>Driver</info> - protocol used to access this mailbox: POP3, IMAP, NNTP
                  
                  <info>Mailbox</info> - the mailbox name
                  
                  <info>Nmsgs</info> - number of messages in the mailbox
                  
                  <info>Recent</info> - number of recent messages in the mailbox
                  
                  Returns <info>false</info> on failure.


id: imap_clearflag_full
type: function
doc:
<comment>Description:</comment>
  Clears flags on messages
  
  This function causes a store to delete the specified <strong>$flag</strong> to the flags set for the messages in
  the specified <strong>$sequence</strong>.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>      <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$sequence</strong>  A sequence of message numbers. You can enumerate desired messages with
                              the <return>X,Y</return> syntax, or retrieve all messages  within an interval with the
                              <return>X:Y</return> syntax
  <info>string</info>           <strong>$flag</strong>      The flags which you can unset are "\\Seen", "\\Answered", "\\Flagged",
                              "\\Deleted", and "\\Draft" (as defined by RFC2060)
  <info>int</info>              <strong>$options</strong>   <strong>$options</strong> are a bit mask and may contain the single option: <info>ST_UID</info> -
                              The sequence argument contains UIDs instead of sequence numbers
                              
                              <info>ST_UID</info> - The sequence argument contains UIDs instead of sequence
                              numbers

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imap_setflag_full()</strong>


id: imap_close
type: function
doc:
<comment>Description:</comment>
  Close an IMAP stream
  
  Closes the imap stream.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>   <class>IMAP\Connection</class> 实例。
  <info>int</info>              <strong>$flags</strong>  If set to <info>CL_EXPUNGE</info>, the function will silently expunge the mailbox
                           before closing, removing all messages marked for deletion. You can
                           achieve the same thing by using <strong>imap_expunge()</strong>

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imap_open()</strong>


id: imap_create
type: function
doc:
<comment>Description:</comment>
  别名 imap_createmailbox
  
  此函数是该函数的别名： <strong>imap_createmailbox()</strong>.


id: imap_createmailbox
type: function
doc:
<comment>Description:</comment>
  Create a new mailbox
  
  Creates a new mailbox specified by <strong>$mailbox</strong>.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>     <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$mailbox</strong>  The mailbox name, see <strong>imap_open()</strong> for more information. Names
                             containing international characters should be encoded by
                             <strong>imap_utf7_encode()</strong>
                             
                             Passing untrusted data to this parameter is insecure, unless
                             imap.enable_insecure_rsh is disabled.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imap_renamemailbox()</strong>
   * <strong>imap_deletemailbox()</strong>


id: imap_delete
type: function
doc:
<comment>Description:</comment>
  Mark a message for deletion from current mailbox
  
  Marks messages listed in <strong>$message_nums</strong> for deletion. Messages marked for deletion will stay in the
  mailbox until either <strong>imap_expunge()</strong> is called or <strong>imap_close()</strong> is called with the optional
  parameter <info>CL_EXPUNGE</info>.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>          <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$message_nums</strong>  A <info>string</info> representing one or more messages in IMAP4-style sequence
                                  format (<return>"n"</return>, <return>"n:m"</return>, or combination of these delimited by commas).
  <info>int</info>              <strong>$flags</strong>         You can set the <info>FT_UID</info> which tells the function to treat the
                                  <strong>$message_nums</strong> argument as a <return>UID</return>.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info>.

<comment>See Also:</comment>
   * <strong>imap_undelete()</strong>
   * <strong>imap_expunge()</strong>
   * <strong>imap_close()</strong>


id: imap_deletemailbox
type: function
doc:
<comment>Description:</comment>
  Delete a mailbox
  
  Deletes the specified <strong>$mailbox</strong>.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>     <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$mailbox</strong>  The mailbox name, see <strong>imap_open()</strong> for more information
                             
                             Passing untrusted data to this parameter is insecure, unless
                             imap.enable_insecure_rsh is disabled.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imap_createmailbox()</strong>
   * <strong>imap_renamemailbox()</strong>
   * <strong>imap_open()</strong> for the format of
     <strong>$mbox</strong>
    


id: imap_errors
type: function
doc:
<comment>Description:</comment>
  Returns all of the IMAP errors that have occurred
  
  Gets all of the IMAP errors (if any) that have occurred during this page request or since the
  error stack was reset.
  
  When <strong>imap_errors()</strong> is called, the error stack is subsequently cleared.

<comment>Return:</comment>
  <info>array|false</info>  This function returns an array of all of the IMAP error messages generated since the
               last <strong>imap_errors()</strong> call, or the beginning of the page. Returns <info>false</info> if no error
               messages are available.

<comment>See Also:</comment>
   * <strong>imap_last_error()</strong>
   * <strong>imap_alerts()</strong>


id: imap_expunge
type: function
doc:
<comment>Description:</comment>
  Delete all messages marked for deletion
  
  Deletes all the messages marked for deletion by  <strong>imap_delete()</strong>, <strong>imap_mail_move()</strong>, or
  <strong>imap_setflag_full()</strong>.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>  <class>IMAP\Connection</class> 实例。

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info>.


id: imap_fetch_overview
type: function
doc:
<comment>Description:</comment>
  Read an overview of the information in the headers of the given message
  
  This function fetches mail headers for the given <strong>$sequence</strong> and returns an overview of their
  contents.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>      <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$sequence</strong>  A message sequence description. You can enumerate desired messages
                              with the <return>X,Y</return> syntax, or retrieve all messages  within an interval with
                              the <return>X:Y</return> syntax
  <info>int</info>              <strong>$flags</strong>     <strong>$sequence</strong> will contain a sequence of message indices or UIDs, if this
                              parameter is set to  <info>FT_UID</info>.

<comment>Return:</comment>
  <info>array|false</info>  Returns an array of objects describing one message header each. The object will only
               define a property if it exists. The possible properties are: <return>subject</return> - the messages
               subject <return>from</return> - who sent it <return>to</return> - recipient <return>date</return> - when was it sent <return>message_id</return> -
               Message-ID <return>references</return> - is a reference to this message id <return>in_reply_to</return> - is a reply to
               this message id <return>size</return> - size in bytes <return>uid</return> - UID the message has in the mailbox <return>msgno</return> -
               message sequence number in the mailbox <return>recent</return> - this message is flagged as recent
               <return>flagged</return> -  this message is flagged <return>answered</return> -  this message is flagged as answered
               <return>deleted</return> -  this message is flagged for deletion <return>seen</return> -  this message is flagged as
               already read <return>draft</return> -  this message is flagged as being a draft <return>udate</return> -  the UNIX
               timestamp of the arrival date  The function returns <info>false</info> on failure.
               
               <return>subject</return> - the messages subject
               
               <return>from</return> - who sent it
               
               <return>to</return> - recipient
               
               <return>date</return> - when was it sent
               
               <return>message_id</return> - Message-ID
               
               <return>references</return> - is a reference to this message id
               
               <return>in_reply_to</return> - is a reply to this message id
               
               <return>size</return> - size in bytes
               
               <return>uid</return> - UID the message has in the mailbox
               
               <return>msgno</return> - message sequence number in the mailbox
               
               <return>recent</return> - this message is flagged as recent
               
               <return>flagged</return> -  this message is flagged
               
               <return>answered</return> -  this message is flagged as answered
               
               <return>deleted</return> -  this message is flagged for deletion
               
               <return>seen</return> -  this message is flagged as already read
               
               <return>draft</return> -  this message is flagged as being a draft
               
               <return>udate</return> -  the UNIX timestamp of the arrival date

<comment>See Also:</comment>
   * <strong>imap_fetchheader()</strong>


id: imap_fetchbody
type: function
doc:
<comment>Description:</comment>
  Fetch a particular section of the body of the message
  
  Fetch of a particular section of the body of the specified messages.  Body parts are not decoded
  by this function.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>         <class>IMAP\Connection</class> 实例。
  <info>int</info>              <strong>$message_num</strong>  The message number
  <info>string</info>           <strong>$section</strong>      The part number. It is a string of integers delimited by period
                                 which index into a body part list as per the IMAP4 specification
  <info>int</info>              <strong>$flags</strong>        A bitmask with one or more of the following: <info>FT_UID</info> - The
                                 <strong>$message_num</strong> is a UID <info>FT_PEEK</info> - Do not set the \Seen flag if not
                                 already set <info>FT_INTERNAL</info> - The return string is in internal format,
                                 will not canonicalize to CRLF.
                                 
                                 <info>FT_UID</info> - The <strong>$message_num</strong> is a UID
                                 
                                 <info>FT_PEEK</info> - Do not set the \Seen flag if not already set
                                 
                                 <info>FT_INTERNAL</info> - The return string is in internal format, will not
                                 canonicalize to CRLF.

<comment>Return:</comment>
  <info>string|false</info>  Returns a particular section of the body of the specified messages as a text string,
                或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>imap_savebody()</strong>
   * <strong>imap_fetchstructure()</strong>


id: imap_fetchheader
type: function
doc:
<comment>Description:</comment>
  Returns header for a message
  
  This function causes a fetch of the complete, unfiltered RFC2822 format header of the specified
  message.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>         <class>IMAP\Connection</class> 实例。
  <info>int</info>              <strong>$message_num</strong>  The message number
  <info>int</info>              <strong>$flags</strong>        The possible <strong>$flags</strong> are: <info>FT_UID</info> - The <strong>$message_num</strong> argument is a
                                 UID <info>FT_INTERNAL</info> - The return string is in "internal" format,
                                 without any attempt to canonicalize to CRLF newlines
                                 <info>FT_PREFETCHTEXT</info> - The RFC822.TEXT should be pre-fetched at the same
                                 time.  This avoids an extra RTT on an IMAP connection if a full
                                 message text is desired (e.g. in a "save to local file" operation)
                                 
                                 <info>FT_UID</info> - The <strong>$message_num</strong> argument is a UID
                                 
                                 <info>FT_INTERNAL</info> - The return string is in "internal" format, without
                                 any attempt to canonicalize to CRLF newlines
                                 
                                 <info>FT_PREFETCHTEXT</info> - The RFC822.TEXT should be pre-fetched at the same
                                 time.  This avoids an extra RTT on an IMAP connection if a full
                                 message text is desired (e.g. in a "save to local file" operation)

<comment>Return:</comment>
  <info>string|false</info>  Returns the header of the specified message as a text string,  或者在失败时返回
                <info>false</info>.

<comment>See Also:</comment>
   * <strong>imap_fetch_overview()</strong>


id: imap_fetchmime
type: function
doc:
<comment>Description:</comment>
  Fetch MIME headers for a particular section of the message
  
  Fetch the MIME headers of a particular section of the body of the specified messages.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>         <class>IMAP\Connection</class> 实例。
  <info>int</info>              <strong>$message_num</strong>  The message number
  <info>string</info>           <strong>$section</strong>      The part number. It is a string of integers delimited by period
                                 which index into a body part list as per the IMAP4 specification
  <info>int</info>              <strong>$flags</strong>        A bitmask with one or more of the following: <info>FT_UID</info> - The
                                 <strong>$message_num</strong> is a UID <info>FT_PEEK</info> - Do not set the \Seen flag if not
                                 already set <info>FT_INTERNAL</info> - The return string is in internal format,
                                 will not canonicalize to CRLF.
                                 
                                 <info>FT_UID</info> - The <strong>$message_num</strong> is a UID
                                 
                                 <info>FT_PEEK</info> - Do not set the \Seen flag if not already set
                                 
                                 <info>FT_INTERNAL</info> - The return string is in internal format, will not
                                 canonicalize to CRLF.

<comment>Return:</comment>
  <info>string|false</info>  Returns the MIME headers of a particular section of the body of the specified
                messages as a text string,  或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>imap_fetchbody()</strong>
   * <strong>imap_fetchstructure()</strong>
   * <strong>imap_fetchheader()</strong>


id: imap_fetchstructure
type: function
doc:
<comment>Description:</comment>
  Read the structure of a particular message
  
  Fetches all the structured information for a given message.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>         <class>IMAP\Connection</class> 实例。
  <info>int</info>              <strong>$message_num</strong>  The message number
  <info>int</info>              <strong>$flags</strong>        This optional parameter only has a single option,  <info>FT_UID</info>, which
                                 tells the function to treat the <strong>$message_num</strong> argument as a  <return>UID</return>.

<comment>Return:</comment>
  <info>stdClass|false</info>  Returns an object with properties listed in the table below,  或者在失败时返回
                  <info>false</info>.
                  
                   Returned Object for <strong>imap_fetchstructure()</strong> typePrimary body typeencodingBody
                  transfer encodingifsubtype<info>true</info> if there is a subtype stringsubtypeMIME
                  subtypeifdescription<info>true</info> if there is a description stringdescriptionContent
                  description stringifid<info>true</info> if there is an identification stringidIdentification
                  stringlinesNumber of linesbytesNumber of bytesifdisposition<info>true</info> if there is a
                  disposition stringdispositionDisposition stringifdparameters<info>true</info> if the
                  dparameters array existsdparametersAn array of objects where each object has an
                  <return>"attribute"</return> and a <return>"value"</return> property corresponding to the parameters on the
                  <return>Content-disposition</return> MIME header.ifparameters<info>true</info> if the parameters array
                  existsparametersAn array of objects where each object has an <return>"attribute"</return> and a
                  <return>"value"</return> property.partsAn array of objects identical in structure to the top-level
                  object, each of which corresponds to a MIME body part.
                  
                  Primary body type (value may vary with used library, use of constants is
                  recommended)ValueTypeConstant0textTYPETEXT1multipartTYPEMULTIPART2messageTYPEMESSAGE3applicationTYPEAPPLICATION4audioTYPEAUDIO5imageTYPEIMAGE6videoTYPEVIDEO7modelTYPEMODEL8otherTYPEOTHER
                  
                  Transfer encodings (value may vary with used library, use of constants is
                  recommended)ValueTypeConstant07bitENC7BIT18bitENC8BIT2BinaryENCBINARY3Base64ENCBASE644Quoted-PrintableENCQUOTEDPRINTABLE5otherENCOTHER

<comment>See Also:</comment>
   * <strong>imap_fetchbody()</strong>
   * <strong>imap_bodystruct()</strong>


id: imap_gc
type: function
doc:
<comment>Description:</comment>
  Clears IMAP cache
  
  Purges the cache of entries of a specific type.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>   <class>IMAP\Connection</class> 实例。
  <info>int</info>              <strong>$flags</strong>  Specifies the cache to purge. It may one or a combination of the
                           following constants:  <info>IMAP_GC_ELT</info> (message cache elements),  <info>IMAP_GC_ENV</info>
                           (envelope and bodies), <info>IMAP_GC_TEXTS</info> (texts).

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。


id: imap_get_quota
type: function
doc:
<comment>Description:</comment>
  Retrieve the quota level settings, and usage statics per mailbox
  
  Retrieve the quota level settings, and usage statics per mailbox.
  
  For a non-admin user version of this function, please see the <strong>imap_get_quotaroot()</strong> function of
  PHP.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>        <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$quota_root</strong>  <strong>$quota_root</strong> should normally be in the form of <return>user.name</return> where name
                                is the mailbox you wish to retrieve information about.

<comment>Return:</comment>
  <info>array|false</info>  Returns an array with integer values limit and usage for the given mailbox.  The
               value of limit represents the total amount of space allowed for this mailbox.  The
               usage value represents the mailboxes current level of capacity.  Will return <info>false</info> in
               the case of failure.
               
               As of PHP 4.3, the function more properly reflects the functionality as dictated by
               the RFC2087. The array return value has changed to support an unlimited number of
               returned  resources (i.e.  messages, or sub-folders) with each named resource
               receiving an individual array key.  Each key value then contains an another array
               with the usage and limit values within it.
               
               For backwards compatibility reasons, the original access methods are still available
               for use, although it is suggested to update.

<comment>See Also:</comment>
   * <strong>imap_open()</strong>
   * <strong>imap_set_quota()</strong>
   * <strong>imap_get_quotaroot()</strong>


id: imap_get_quotaroot
type: function
doc:
<comment>Description:</comment>
  Retrieve the quota settings per user
  
  Retrieve the quota settings per user. The limit value represents the total amount of space allowed
  for this user's total mailbox usage.  The usage value represents the user's current total mailbox
  capacity.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>     <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$mailbox</strong>  <strong>$mailbox</strong> should normally be in the form of which mailbox (i.e. INBOX).

<comment>Return:</comment>
  <info>array|false</info>  Returns an array of integer values pertaining to the specified user mailbox.  All
               values contain a key based upon the resource name, and a corresponding array with the
               usage and limit values within.
               
               This function will return <info>false</info> in the case of call failure, and an array of
               information about the connection upon an un-parsable response from the server.

<comment>See Also:</comment>
   * <strong>imap_open()</strong>
   * <strong>imap_set_quota()</strong>
   * <strong>imap_get_quota()</strong>


id: imap_getacl
type: function
doc:
<comment>Description:</comment>
  Gets the ACL for a given mailbox
  
  Gets the ACL for a given mailbox.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>     <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$mailbox</strong>  The mailbox name, see <strong>imap_open()</strong> for more information
                             
                             Passing untrusted data to this parameter is insecure, unless
                             imap.enable_insecure_rsh is disabled.

<comment>Return:</comment>
  <info>array|false</info>  Returns an associative array of "folder" =&gt; "acl" pairs,  或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>imap_setacl()</strong>


id: imap_getmailboxes
type: function
doc:
<comment>Description:</comment>
  Read the list of mailboxes, returning detailed information on each one
  
  Gets information on the mailboxes.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>       <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$reference</strong>  <strong>$reference</strong> should normally be just the server specification as
                               described in <strong>imap_open()</strong>
                               
                               Passing untrusted data to this parameter is insecure, unless
                               imap.enable_insecure_rsh is disabled.
  <info>string</info>           <strong>$pattern</strong>    指定在邮箱层级的何处开始查找。
                               
                               在组成 <strong>$pattern</strong> 的字符中可使用两个特殊字符： '<return>*</return>' 和 '<return>%</return>'。 '<return>*</return>' 是指返
                               回所有邮箱目录. 如果将 '<return>*</return>' 作为 <strong>$pattern</strong> 参数时, 则会返回整个邮箱层级
                               结构。 '<return>%</return>' 是指只返回当前级次。 '<return>%</return>' 作为 <strong>$pattern</strong> 参数则只会返回顶层
                               邮箱； '<return>~/mail/%</return>' 用于 <return>UW_IMAPD</return> 则会返回名为 ~/mail 的目录, 但不包含
                               其子目录。

<comment>Return:</comment>
  <info>array|false</info>  Returns an array of objects containing mailbox information. Each object has the
               attributes <strong>$name</strong>, specifying the full name of the mailbox; <strong>$delimiter</strong>, which is the
               hierarchy delimiter for the part of the hierarchy this mailbox is in; and
               <strong>$attributes</strong>. <strong>$Attributes</strong> is a bitmask that can be tested against: <info>LATT_NOINFERIORS</info> -
               This mailbox not contains, and may not contain any "children" (there are no mailboxes
               below this one). Calling  <strong>imap_createmailbox()</strong> will not work on this mailbox.
               <info>LATT_NOSELECT</info> - This is only a container, not a mailbox - you cannot open it.
               <info>LATT_MARKED</info> - This mailbox is marked. This means that it may  contain new messages
               since the last time it was checked. Not provided by all IMAP servers. <info>LATT_UNMARKED</info> -
               This mailbox is not marked, does not contain new messages.  If either <info>MARKED</info> or
               <info>UNMARKED</info> is provided, you can assume the IMAP server  supports this feature for this
               mailbox. <info>LATT_REFERRAL</info> - This container has a referral to a remote mailbox.
               <info>LATT_HASCHILDREN</info> - This mailbox has selectable inferiors. <info>LATT_HASNOCHILDREN</info> - This
               mailbox has no selectable inferiors.  The function returns <info>false</info> on failure.
               
               <info>LATT_NOINFERIORS</info> - This mailbox not contains, and may not contain any "children"
               (there are no mailboxes below this one). Calling  <strong>imap_createmailbox()</strong> will not work
               on this mailbox.
               
               <info>LATT_NOSELECT</info> - This is only a container, not a mailbox - you cannot open it.
               
               <info>LATT_MARKED</info> - This mailbox is marked. This means that it may  contain new messages
               since the last time it was checked. Not provided by all IMAP servers.
               
               <info>LATT_UNMARKED</info> - This mailbox is not marked, does not contain new messages.  If either
               <info>MARKED</info> or <info>UNMARKED</info> is provided, you can assume the IMAP server  supports this feature
               for this mailbox.
               
               <info>LATT_REFERRAL</info> - This container has a referral to a remote mailbox.
               
               <info>LATT_HASCHILDREN</info> - This mailbox has selectable inferiors.
               
               <info>LATT_HASNOCHILDREN</info> - This mailbox has no selectable inferiors.

<comment>See Also:</comment>
   * <strong>imap_getsubscribed()</strong>


id: imap_getsubscribed
type: function
doc:
<comment>Description:</comment>
  List all the subscribed mailboxes
  
  Gets information about the subscribed mailboxes.
  
  Identical to <strong>imap_getmailboxes()</strong>, except that it only returns mailboxes that the user is
  subscribed to.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>       <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$reference</strong>  <strong>$reference</strong> should normally be just the server specification as
                               described in <strong>imap_open()</strong>
                               
                               Passing untrusted data to this parameter is insecure, unless
                               imap.enable_insecure_rsh is disabled.
  <info>string</info>           <strong>$pattern</strong>    指定在邮箱层级的何处开始查找。
                               
                               在组成 <strong>$pattern</strong> 的字符中可使用两个特殊字符： '<return>*</return>' 和 '<return>%</return>'。 '<return>*</return>' 是指返
                               回所有邮箱目录. 如果将 '<return>*</return>' 作为 <strong>$pattern</strong> 参数时, 则会返回整个邮箱层级
                               结构。 '<return>%</return>' 是指只返回当前级次。 '<return>%</return>' 作为 <strong>$pattern</strong> 参数则只会返回顶层
                               邮箱； '<return>~/mail/%</return>' 用于 <return>UW_IMAPD</return> 则会返回名为 ~/mail 的目录, 但不包含
                               其子目录。

<comment>Return:</comment>
  <info>array|false</info>  Returns an array of objects containing mailbox information. Each object has the
               attributes <strong>$name</strong>, specifying the full name of the mailbox; <strong>$delimiter</strong>, which is the
               hierarchy delimiter for the part of the hierarchy this mailbox is in; and
               <strong>$attributes</strong>. <strong>$Attributes</strong> is a bitmask that can be tested against: <info>LATT_NOINFERIORS</info> -
               This mailbox has no "children" (there are no mailboxes below this one). <info>LATT_NOSELECT</info>
               - This is only a container, not a mailbox - you cannot open it. <info>LATT_MARKED</info> - This
               mailbox is marked. Only used by UW-IMAPD. <info>LATT_UNMARKED</info> - This mailbox is not marked.
               Only used by UW-IMAPD. <info>LATT_REFERRAL</info> - This container has a referral to a remote
               mailbox. <info>LATT_HASCHILDREN</info> - This mailbox has selectable inferiors. <info>LATT_HASNOCHILDREN</info>
               - This mailbox has no selectable inferiors.  The function returns <info>false</info> on failure.
               
               <info>LATT_NOINFERIORS</info> - This mailbox has no "children" (there are no mailboxes below this
               one).
               
               <info>LATT_NOSELECT</info> - This is only a container, not a mailbox - you cannot open it.
               
               <info>LATT_MARKED</info> - This mailbox is marked. Only used by UW-IMAPD.
               
               <info>LATT_UNMARKED</info> - This mailbox is not marked. Only used by UW-IMAPD.
               
               <info>LATT_REFERRAL</info> - This container has a referral to a remote mailbox.
               
               <info>LATT_HASCHILDREN</info> - This mailbox has selectable inferiors.
               
               <info>LATT_HASNOCHILDREN</info> - This mailbox has no selectable inferiors.


id: imap_header
type: function
doc:
<comment>Description:</comment>
  别名 imap_headerinfo
  
  此函数是该函数的别名： <strong>imap_headerinfo()</strong>.


id: imap_headerinfo
type: function
doc:
<comment>Description:</comment>
  Read the header of the message
  
  Gets information about the given message number by reading its headers.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>            <class>IMAP\Connection</class> 实例。
  <info>int</info>              <strong>$message_num</strong>     The message number
  <info>int</info>              <strong>$from_length</strong>     Number of characters for the <return>fetchfrom</return> property. Must be greater
                                    than or equal to zero.
  <info>int</info>              <strong>$subject_length</strong>  Number of characters for the <return>fetchsubject</return> property Must be
                                    greater than or equal to zero.
  <info></info>                 <strong>$defaulthost</strong>     

<comment>Return:</comment>
  <info>stdClass|false</info>  Returns <info>false</info> on error or, if successful, the information in an object with
                  following properties:  toaddress - full to: line, up to 1024 characters  to - an
                  array of objects from the To: line, with the following  properties: <return>personal</return>, <return>adl</return>,
                  <return>mailbox</return>, and <return>host</return>  fromaddress - full from: line, up to 1024 characters  from - an
                  array of objects from the From: line, with the following  properties: <return>personal</return>,
                  <return>adl</return>, <return>mailbox</return>, and <return>host</return>  ccaddress - full cc: line, up to 1024 characters  cc - an
                  array of objects from the Cc: line, with the following  properties: <return>personal</return>, <return>adl</return>,
                  <return>mailbox</return>, and <return>host</return>  bccaddress - full bcc: line, up to 1024 characters  bcc - an
                  array of objects from the Bcc: line, with the following  properties: <return>personal</return>,
                  <return>adl</return>, <return>mailbox</return>, and <return>host</return>  reply_toaddress - full Reply-To: line, up to 1024
                  characters  reply_to - an array of objects from the Reply-To: line, with the
                  following properties: <return>personal</return>, <return>adl</return>, <return>mailbox</return>, and <return>host</return>  senderaddress - full
                  sender: line, up to 1024 characters  sender - an array of objects from the Sender:
                  line, with the following  properties: <return>personal</return>, <return>adl</return>, <return>mailbox</return>, and <return>host</return>
                  return_pathaddress - full Return-Path: line, up to 1024 characters  return_path -
                  an array of objects from the Return-Path: line, with the following properties:
                  <return>personal</return>,  <return>adl</return>, <return>mailbox</return>, and  <return>host</return>  remail -   date - The message date as found in
                  its headers  Date - Same as date  subject - The message subject  Subject - Same as
                  subject   in_reply_to -   message_id -   newsgroups -   followup_to -   references
                  -   Recent - <return>R</return> if recent and seen, <return>N</return> if recent and not seen, ' ' if not recent.
                  Unseen - <return>U</return> if not seen AND not recent, ' ' if seen OR not seen and recent  Flagged
                  - <return>F</return> if flagged, ' ' if not flagged  Answered - <return>A</return> if answered, ' ' if unanswered
                  Deleted - <return>D</return> if deleted, ' ' if not deleted  Draft - <return>X</return> if draft, ' ' if not draft
                  Msgno - The message number  MailDate -   Size - The message size  udate - mail
                  message date in Unix time  fetchfrom - from line formatted to fit <strong>$from_length</strong>
                  characters  fetchsubject - subject line formatted to fit  <strong>$subject_length</strong>
                  characters
                  
                  toaddress - full to: line, up to 1024 characters
                  
                  to - an array of objects from the To: line, with the following  properties:
                  <return>personal</return>, <return>adl</return>, <return>mailbox</return>, and <return>host</return>
                  
                  fromaddress - full from: line, up to 1024 characters
                  
                  from - an array of objects from the From: line, with the following  properties:
                  <return>personal</return>, <return>adl</return>, <return>mailbox</return>, and <return>host</return>
                  
                  ccaddress - full cc: line, up to 1024 characters
                  
                  cc - an array of objects from the Cc: line, with the following  properties:
                  <return>personal</return>, <return>adl</return>, <return>mailbox</return>, and <return>host</return>
                  
                  bccaddress - full bcc: line, up to 1024 characters
                  
                  bcc - an array of objects from the Bcc: line, with the following  properties:
                  <return>personal</return>, <return>adl</return>, <return>mailbox</return>, and <return>host</return>
                  
                  reply_toaddress - full Reply-To: line, up to 1024 characters
                  
                  reply_to - an array of objects from the Reply-To: line, with the following
                  properties: <return>personal</return>, <return>adl</return>, <return>mailbox</return>, and <return>host</return>
                  
                  senderaddress - full sender: line, up to 1024 characters
                  
                  sender - an array of objects from the Sender: line, with the following
                  properties: <return>personal</return>, <return>adl</return>, <return>mailbox</return>, and <return>host</return>
                  
                  return_pathaddress - full Return-Path: line, up to 1024 characters
                  
                  return_path - an array of objects from the Return-Path: line, with the following
                  properties: <return>personal</return>,  <return>adl</return>, <return>mailbox</return>, and  <return>host</return>
                  
                  remail -
                  
                  date - The message date as found in its headers
                  
                  Date - Same as date
                  
                  subject - The message subject
                  
                  Subject - Same as subject
                  
                  in_reply_to -
                  
                  message_id -
                  
                  newsgroups -
                  
                  followup_to -
                  
                  references -
                  
                  Recent - <return>R</return> if recent and seen, <return>N</return> if recent and not seen, ' ' if not recent.
                  
                  Unseen - <return>U</return> if not seen AND not recent, ' ' if seen OR not seen and recent
                  
                  Flagged - <return>F</return> if flagged, ' ' if not flagged
                  
                  Answered - <return>A</return> if answered, ' ' if unanswered
                  
                  Deleted - <return>D</return> if deleted, ' ' if not deleted
                  
                  Draft - <return>X</return> if draft, ' ' if not draft
                  
                  Msgno - The message number
                  
                  MailDate -
                  
                  Size - The message size
                  
                  udate - mail message date in Unix time
                  
                  fetchfrom - from line formatted to fit <strong>$from_length</strong> characters
                  
                  fetchsubject - subject line formatted to fit  <strong>$subject_length</strong> characters

<comment>See Also:</comment>
   * <strong>imap_fetch_overview()</strong>


id: imap_headers
type: function
doc:
<comment>Description:</comment>
  Returns headers for all messages in a mailbox
  
  Returns headers for all messages in a mailbox.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>  <class>IMAP\Connection</class> 实例。

<comment>Return:</comment>
  <info>array|false</info>  Returns an array of string formatted with header info. One element per mail message.
               Returns <info>false</info> on failure.


id: imap_is_open
type: function
doc:
<comment>Description:</comment>
  Check if the IMAP stream is still valid
  
  Check if the IMAP stream is still valid.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>  <class>IMAP\Connection</class> 实例。

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the stream is still valid, <info>false</info> otherwise.


id: imap_last_error
type: function
doc:
<comment>Description:</comment>
  Gets the last IMAP error that occurred during this page request
  
  Gets the full text of the last IMAP error message that occurred on the current page. The error
  stack is untouched; calling  <strong>imap_last_error()</strong> subsequently, with no intervening errors, will
  return the same error.

<comment>Return:</comment>
  <info>string|false</info>  Returns the full text of the last IMAP error message that occurred on the current
                page. Returns <info>false</info> if no error messages are available.

<comment>See Also:</comment>
   * <strong>imap_errors()</strong>


id: imap_list
type: function
doc:
<comment>Description:</comment>
  Read the list of mailboxes
  
  Read the list of mailboxes.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>       <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$reference</strong>  <strong>$reference</strong> should normally be just the server specification as
                               described in <strong>imap_open()</strong>.
                               
                               Passing untrusted data to this parameter is insecure, unless
                               imap.enable_insecure_rsh is disabled.
  <info>string</info>           <strong>$pattern</strong>    指定在邮箱层级的何处开始查找。
                               
                               在组成 <strong>$pattern</strong> 的字符中可使用两个特殊字符： '<return>*</return>' 和 '<return>%</return>'。 '<return>*</return>' 是指返
                               回所有邮箱目录. 如果将 '<return>*</return>' 作为 <strong>$pattern</strong> 参数时, 则会返回整个邮箱层级
                               结构。 '<return>%</return>' 是指只返回当前级次。 '<return>%</return>' 作为 <strong>$pattern</strong> 参数则只会返回顶层
                               邮箱； '<return>~/mail/%</return>' 用于 <return>UW_IMAPD</return> 则会返回名为 ~/mail 的目录, 但不包含
                               其子目录。

<comment>Return:</comment>
  <info>array|false</info>  Returns an array containing the names of the mailboxes or <info>false</info> in case of failure.

<comment>See Also:</comment>
   * <strong>imap_getmailboxes()</strong>
   * <strong>imap_lsub()</strong>


id: imap_listscan
type: function
doc:
<comment>Description:</comment>
  Returns the list of mailboxes that matches the given text
  
  Returns an array containing the names of the mailboxes that have <strong>$content</strong> in the text of the
  mailbox.
  
  This function is similar to <strong>imap_listmailbox()</strong>, but it will additionally check for the presence of
  the string <strong>$content</strong> inside the mailbox data.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>       <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$reference</strong>  <strong>$reference</strong> should normally be just the server  specification as
                               described in <strong>imap_open()</strong>
                               
                               Passing untrusted data to this parameter is insecure, unless
                               imap.enable_insecure_rsh is disabled.
  <info>string</info>           <strong>$pattern</strong>    指定在邮箱层级的何处开始查找。
                               
                               在组成 <strong>$pattern</strong> 的字符中可使用两个特殊字符： '<return>*</return>' 和 '<return>%</return>'。 '<return>*</return>' 是指返
                               回所有邮箱目录. 如果将 '<return>*</return>' 作为 <strong>$pattern</strong> 参数时, 则会返回整个邮箱层级
                               结构。 '<return>%</return>' 是指只返回当前级次。 '<return>%</return>' 作为 <strong>$pattern</strong> 参数则只会返回顶层
                               邮箱； '<return>~/mail/%</return>' 用于 <return>UW_IMAPD</return> 则会返回名为 ~/mail 的目录, 但不包含
                               其子目录。
  <info>string</info>           <strong>$content</strong>    The searched string

<comment>Return:</comment>
  <info>array|false</info>  Returns an array containing the names of the mailboxes that have <strong>$content</strong> in the text
               of the mailbox,  或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>imap_listmailbox()</strong>
   * <strong>imap_search()</strong>


id: imap_lsub
type: function
doc:
<comment>Description:</comment>
  List all the subscribed mailboxes
  
  Gets an array of all the mailboxes that you have subscribed.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>       <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$reference</strong>  <strong>$reference</strong> should normally be just the server  specification as
                               described in <strong>imap_open()</strong>
                               
                               Passing untrusted data to this parameter is insecure, unless
                               imap.enable_insecure_rsh is disabled.
  <info>string</info>           <strong>$pattern</strong>    指定在邮箱层级的何处开始查找。
                               
                               在组成 <strong>$pattern</strong> 的字符中可使用两个特殊字符： '<return>*</return>' 和 '<return>%</return>'。 '<return>*</return>' 是指返
                               回所有邮箱目录. 如果将 '<return>*</return>' 作为 <strong>$pattern</strong> 参数时, 则会返回整个邮箱层级
                               结构。 '<return>%</return>' 是指只返回当前级次。 '<return>%</return>' 作为 <strong>$pattern</strong> 参数则只会返回顶层
                               邮箱； '<return>~/mail/%</return>' 用于 <return>UW_IMAPD</return> 则会返回名为 ~/mail 的目录, 但不包含
                               其子目录。

<comment>Return:</comment>
  <info>array|false</info>  Returns an array of all the subscribed mailboxes,  或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>imap_list()</strong>
   * <strong>imap_getmailboxes()</strong>


id: imap_mail
type: function
doc:
<comment>Description:</comment>
  Send an email message
  
  This function allows sending of emails with correct handling of Cc and Bcc receivers.
  
  The parameters <strong>$to</strong>, <strong>$cc</strong> and <strong>$bcc</strong> are all strings and are all parsed as RFC822 address lists.

<comment>Param:</comment>
  <info>string</info>       <strong>$to</strong>                  The receiver
  <info>string</info>       <strong>$subject</strong>             The mail subject
  <info>string</info>       <strong>$message</strong>             The mail body, see <strong>imap_mail_compose()</strong>
  <info>string|null</info>  <strong>$additional_headers</strong>  As string with additional headers to be set on the mail
  <info>string|null</info>  <strong>$cc</strong>                  
  <info>string|null</info>  <strong>$bcc</strong>                 The receivers specified in <strong>$bcc</strong> will get the mail, but are
                                    excluded from the headers.
  <info>string|null</info>  <strong>$return_path</strong>         Use this parameter to specify return path upon mail delivery
                                    failure. This is useful when using PHP as a mail client for
                                    multiple users.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>mail()</strong>
   * <strong>imap_mail_compose()</strong>


id: imap_mail_compose
type: function
doc:
<comment>Description:</comment>
  Create a MIME message based on given envelope and body sections
  
  Create a MIME message based on the given <strong>$envelope</strong> and <strong>$bodies</strong> sections.

<comment>Param:</comment>
  <info>array</info>  <strong>$envelope</strong>  An associative array of header fields. Valid keys are: <return>"remail"</return>, <return>"return_path"</return>,
                    <return>"date"</return>, <return>"from"</return>, <return>"reply_to"</return>, <return>"in_reply_to"</return>, <return>"subject"</return>, <return>"to"</return>, <return>"cc"</return>, <return>"bcc"</return> and
                    <return>"message_id"</return>, which set the respective message headers to the given <info>string</info>. To
                    set additional headers, the key <return>"custom_headers"</return> is supported, which expects an
                    array of those headers, e.g. ["User-Agent: My Mail Client"].
  <info>array</info>  <strong>$bodies</strong>    An indexed array of bodies. The first body is the main body of the message; only
                    if it has a type of <info>TYPEMULTIPART</info>, further bodies are processed; these bodies
                    constitute the bodies of the parts.
                    
                    Body Array StructureKeyTypeDescription<return>type</return><info>int</info> The MIME type. One of <info>TYPETEXT</info>
                    (default), <info>TYPEMULTIPART</info>, <info>TYPEMESSAGE</info>, <info>TYPEAPPLICATION</info>, <info>TYPEAUDIO</info>, <info>TYPEIMAGE</info>,
                    <info>TYPEMODEL</info> or <info>TYPEOTHER</info>. <return>encoding</return><info>int</info> The <return>Content-Transfer-Encoding</return>. One of
                    <info>ENC7BIT</info> (default), <info>ENC8BIT</info>, <info>ENCBINARY</info>, <info>ENCBASE64</info>, <info>ENCQUOTEDPRINTABLE</info> or
                    <info>ENCOTHER</info>. <return>charset</return><info>string</info>The charset parameter of the MIME
                    type.<return>type.parameters</return><info>array</info>An associative <info>array</info> of <return>Content-Type</return> parameter names
                    and their values.<return>subtype</return><info>string</info>The MIME subtype, e.g. <return>'jpeg'</return> for
                    <info>TYPEIMAGE</info>.<return>id</return><info>string</info>The <return>Content-ID</return>.<return>description</return><info>string</info>The
                    <return>Content-Description</return>.<return>disposition.type</return><info>string</info>The <return>Content-Disposition</return>, e.g.
                    <return>'attachment'</return>.<return>disposition</return><info>array</info>An associative <info>array</info> of <return>Content-Disposition</return>
                    parameter names and values.<return>contents.data</return><info>string</info>The payload.<return>lines</return><info>int</info>The size of
                    the payload in lines.<return>bytes</return><info>int</info>The size of the payload in bytes.<return>md5</return><info>string</info>The MD5
                    checksum of the payload.

<comment>Return:</comment>
  <info>string|false</info>  Returns the MIME message as <info>string</info>,  或者在失败时返回 <info>false</info>.


id: imap_mail_copy
type: function
doc:
<comment>Description:</comment>
  Copy specified messages to a mailbox
  
  Copies mail messages specified by <strong>$message_nums</strong> to specified mailbox.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>          <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$message_nums</strong>  <strong>$message_nums</strong> is a range not just message numbers (as described in
                                  RFC2060).
  <info>string</info>           <strong>$mailbox</strong>       The mailbox name, see <strong>imap_open()</strong> for more information
                                  
                                  Passing untrusted data to this parameter is insecure, unless
                                  imap.enable_insecure_rsh is disabled.
  <info>int</info>              <strong>$flags</strong>         <strong>$flags</strong> is a bitmask of one or more of <info>CP_UID</info> - the sequence
                                  numbers contain UIDS <info>CP_MOVE</info> - Delete the messages from the
                                  current mailbox after copying. If this flag is set, the function
                                  behaves identically to <strong>imap_mail_move()</strong>.
                                  
                                  <info>CP_UID</info> - the sequence numbers contain UIDS
                                  
                                  <info>CP_MOVE</info> - Delete the messages from the current mailbox after
                                  copying. If this flag is set, the function behaves identically to
                                  <strong>imap_mail_move()</strong>.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imap_mail_move()</strong>


id: imap_mail_move
type: function
doc:
<comment>Description:</comment>
  Move specified messages to a mailbox
  
  Moves mail messages specified by <strong>$message_nums</strong> to the specified <strong>$mailbox</strong>. Note that the mail
  messages are actually copied to the <strong>$mailbox</strong>, and the original messages are flagged for deletion.
  That implies that the messages in <strong>$mailbox</strong> are assigned new UIDs.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>          <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$message_nums</strong>  <strong>$message_nums</strong> is a range not just message numbers (as described in
                                  RFC2060).
  <info>string</info>           <strong>$mailbox</strong>       The mailbox name, see <strong>imap_open()</strong> for more information
                                  
                                  Passing untrusted data to this parameter is insecure, unless
                                  imap.enable_insecure_rsh is disabled.
  <info>int</info>              <strong>$flags</strong>         <strong>$flags</strong> is a bitmask and may contain the single option: <info>CP_UID</info> -
                                  the sequence numbers contain UIDS
                                  
                                  <info>CP_UID</info> - the sequence numbers contain UIDS

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imap_mail_copy()</strong>


id: imap_mailboxmsginfo
type: function
doc:
<comment>Description:</comment>
  Get information about the current mailbox
  
  Checks the current mailbox status on the server. It is similar to <strong>imap_status()</strong>, but will
  additionally sum up the size of all messages in the mailbox, which will take some additional time
  to  execute.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>  <class>IMAP\Connection</class> 实例。

<comment>Return:</comment>
  <info>stdClass</info>  Returns the information in an object with following properties: Mailbox
            propertiesDatedate of last change (current datetime)DriverdriverMailboxname of the
            mailboxNmsgsnumber of messagesRecentnumber of recent messagesUnreadnumber of unread
            messagesDeletednumber of deleted messagesSizemailbox size


id: imap_mime_header_decode
type: function
doc:
<comment>Description:</comment>
  Decode MIME header elements
  
  Decodes MIME message header extensions that are non ASCII text (see RFC2047).

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  The MIME text

<comment>Return:</comment>
  <info>array|false</info>  The decoded elements are returned in an array of objects, where each object has two
               properties, <return>charset</return> and  <return>text</return>.
               
               If the element hasn't been encoded, and in other words is in plain US-ASCII, the
               <return>charset</return> property of that element is set to <return>default</return>.
               
               The function returns <info>false</info> on failure.

<comment>See Also:</comment>
   * <strong>imap_utf8()</strong>


id: imap_msgno
type: function
doc:
<comment>Description:</comment>
  Gets the message sequence number for the given UID
  
  Returns the message sequence number for the given  <strong>$message_uid</strong>.
  
  This function is the inverse of <strong>imap_uid()</strong>.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>         <class>IMAP\Connection</class> 实例。
  <info>int</info>              <strong>$message_uid</strong>  The message UID

<comment>Return:</comment>
  <info>int</info>  Returns the message sequence number for the given  <strong>$message_uid</strong>.

<comment>See Also:</comment>
   * <strong>imap_uid()</strong>


id: imap_mutf7_to_utf8
type: function
doc:
<comment>Description:</comment>
  Decode a modified UTF-7 string to UTF-8
  
  Decode a modified UTF-7 (as specified in RFC 2060, section 5.1.3) string to UTF-8.
  
  This function is only available, if libcclient exports utf8_to_mutf7().

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  A string encoded in modified UTF-7.

<comment>Return:</comment>
  <info>string|false</info>  Returns <strong>$string</strong> converted to UTF-8, 或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>imap_utf8_to_mutf7()</strong>


id: imap_num_msg
type: function
doc:
<comment>Description:</comment>
  Gets the number of messages in the current mailbox
  
  Gets the number of messages in the current mailbox.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>  <class>IMAP\Connection</class> 实例。

<comment>Return:</comment>
  <info>int|false</info>  Return the number of messages in the current mailbox, as an integer, or <info>false</info> on error.

<comment>See Also:</comment>
   * <strong>imap_num_recent()</strong>
   * <strong>imap_status()</strong>


id: imap_num_recent
type: function
doc:
<comment>Description:</comment>
  Gets the number of recent messages in current mailbox
  
  Gets the number of recent messages in the current mailbox.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>  <class>IMAP\Connection</class> 实例。

<comment>Return:</comment>
  <info>int</info>  Returns the number of recent messages in the current mailbox, as an integer.

<comment>See Also:</comment>
   * <strong>imap_num_msg()</strong>
   * <strong>imap_status()</strong>


id: imap_open
type: function
doc:
<comment>Description:</comment>
  Open an IMAP stream to a mailbox
  
  Opens an IMAP stream to a <strong>$mailbox</strong>.
  
  This function can also be used to open streams to POP3 and NNTP servers, but some functions and
  features are only available on IMAP servers.

<comment>Param:</comment>
  <info>string</info>  <strong>$mailbox</strong>   A mailbox name consists of a server and a mailbox path on this server. The
                     special name <return>INBOX</return> stands for the current users personal mailbox. Mailbox names
                     that contain international characters besides those in the printable ASCII
                     space have to be encoded with <strong>imap_utf7_encode()</strong>.
                     
                     Passing untrusted data to this parameter is insecure, unless
                     imap.enable_insecure_rsh is disabled.
                     
                     The server part, which is enclosed in '{' and '}', consists of the servers name
                     or ip address, an optional port (prefixed by ':'), and an optional protocol
                     specification (prefixed by '/').
                     
                     The server part is mandatory in all mailbox parameters.
                     
                     All names which start with <return>{</return> are remote names, and are in the form <return>"{"
                     remote_system_name [":" port] [flags] "}" [mailbox_name]</return> where:
                     <return>remote_system_name</return> - Internet domain name or bracketed IP address of server.
                     <return>port</return> - optional TCP port number, default is the default port for that service
                     <return>flags</return> - optional flags, see following table. <return>mailbox_name</return> - remote mailbox
                     name, default is INBOX
                     
                     <return>remote_system_name</return> - Internet domain name or bracketed IP address of server.
                     
                     <return>port</return> - optional TCP port number, default is the default port for that service
                     
                     <return>flags</return> - optional flags, see following table.
                     
                     <return>mailbox_name</return> - remote mailbox name, default is INBOX
                     
                     Optional flags for namesFlagDescription<return>/service=</return>servicemailbox access service,
                     default is "imap"<return>/user=</return>userremote user name for login on the
                     server<return>/authuser=</return>userremote authentication user; if specified this is the user
                     name whose password is used (e.g. administrator)<return>/anonymous</return>remote access as
                     anonymous user<return>/debug</return>record protocol telemetry in application's debug
                     log<return>/secure</return>do not transmit a plaintext password over the network<return>/imap</return>, <return>/imap2</return>,
                     <return>/imap2bis</return>, <return>/imap4</return>, <return>/imap4rev1</return>equivalent to <return>/service=imap</return><return>/pop3</return>equivalent to
                     <return>/service=pop3</return><return>/nntp</return>equivalent to <return>/service=nntp</return><return>/norsh</return>do not use rsh or ssh to
                     establish a preauthenticated IMAP session<return>/ssl</return>use the <return>Secure Socket Layer</return> to
                     encrypt the session<return>/validate-cert</return>validate certificates from TLS/SSL server
                     (this is the default behavior)<return>/novalidate-cert</return>do not validate certificates from
                     TLS/SSL server, needed if server uses self-signed certificates<return>/tls</return>force use of
                     <return>start-TLS</return> to encrypt the session, and reject connection to servers that do not
                     support it<return>/notls</return>do not do <return>start-TLS</return> to encrypt the session, even with servers
                     that support it<return>/readonly</return>request read-only mailbox open (IMAP only; ignored on
                     NNTP, and an error with SMTP and POP3)
  <info>string</info>  <strong>$user</strong>      The user name
  <info>string</info>  <strong>$password</strong>  The password associated with the <strong>$user</strong>
  <info>int</info>     <strong>$flags</strong>     The <strong>$flags</strong> are a bit mask with one or more of the following: <info>OP_READONLY</info> - Open
                     mailbox read-only <info>OP_ANONYMOUS</info> - Don't use or update a .newsrc for news (NNTP
                     only) <info>OP_HALFOPEN</info> - For IMAP and NNTP names, open a connection but don't open a
                     mailbox. <info>CL_EXPUNGE</info> - Expunge mailbox automatically upon mailbox close (see
                     also <strong>imap_delete()</strong> and <strong>imap_expunge()</strong>) <info>OP_DEBUG</info> - Debug protocol negotiations
                     <info>OP_SHORTCACHE</info> - Short (<return>elt</return>-only) caching <info>OP_SILENT</info> - Don't pass up events
                     (internal use) <info>OP_PROTOTYPE</info> - Return driver prototype <info>OP_SECURE</info> - Don't do
                     non-secure authentication
                     
                     <info>OP_READONLY</info> - Open mailbox read-only
                     
                     <info>OP_ANONYMOUS</info> - Don't use or update a .newsrc for news (NNTP only)
                     
                     <info>OP_HALFOPEN</info> - For IMAP and NNTP names, open a connection but don't open a
                     mailbox.
                     
                     <info>CL_EXPUNGE</info> - Expunge mailbox automatically upon mailbox close (see also
                     <strong>imap_delete()</strong> and <strong>imap_expunge()</strong>)
                     
                     <info>OP_DEBUG</info> - Debug protocol negotiations
                     
                     <info>OP_SHORTCACHE</info> - Short (<return>elt</return>-only) caching
                     
                     <info>OP_SILENT</info> - Don't pass up events (internal use)
                     
                     <info>OP_PROTOTYPE</info> - Return driver prototype
                     
                     <info>OP_SECURE</info> - Don't do non-secure authentication
  <info>int</info>     <strong>$retries</strong>   Number of maximum connect attempts
  <info>array</info>   <strong>$options</strong>   Connection parameters, the following (string) keys maybe used  to set one or
                     more connection parameters: <return>DISABLE_AUTHENTICATOR</return> - Disable authentication
                     properties
                     
                     <return>DISABLE_AUTHENTICATOR</return> - Disable authentication properties

<comment>Return:</comment>
  <info>IMAP\Connection|false</info>  Returns an <class>IMAP\Connection</class> instance on success, 或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>imap_close()</strong>


id: imap_ping
type: function
doc:
<comment>Description:</comment>
  Check if the IMAP stream is still active
  
  <strong>imap_ping()</strong> pings the stream to see if it's still active. It may discover new mail; this is the
  preferred method for a periodic "new mail check" as well as a "keep alive" for servers which have
  inactivity timeout.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>  <class>IMAP\Connection</class> 实例。

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the stream is still alive, <info>false</info> otherwise.


id: imap_qprint
type: function
doc:
<comment>Description:</comment>
  Convert a quoted-printable string to an 8 bit string
  
  Convert a quoted-printable string to an 8 bit string according to RFC2045, section 6.7.

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  A quoted-printable string

<comment>Return:</comment>
  <info>string|false</info>  Returns an 8 bits string,  或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>imap_8bit()</strong>


id: imap_rename
type: function
doc:
<comment>Description:</comment>
  别名 imap_renamemailbox
  
  此函数是该函数的别名： <strong>imap_renamemailbox()</strong>.


id: imap_renamemailbox
type: function
doc:
<comment>Description:</comment>
  Rename an old mailbox to new mailbox
  
  This function renames on old mailbox to new mailbox (see <strong>imap_open()</strong> for the format of <strong>$mbox</strong>
  names).

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>  <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$from</strong>  The old mailbox name, see <strong>imap_open()</strong> for more information
                          
                          Passing untrusted data to this parameter is insecure, unless
                          imap.enable_insecure_rsh is disabled.
  <info>string</info>           <strong>$to</strong>    The new mailbox name, see <strong>imap_open()</strong> for more information
                          
                          Passing untrusted data to this parameter is insecure, unless
                          imap.enable_insecure_rsh is disabled.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imap_createmailbox()</strong>
   * <strong>imap_deletemailbox()</strong>


id: imap_reopen
type: function
doc:
<comment>Description:</comment>
  Reopen IMAP stream to new mailbox
  
  Reopens the specified stream to a new <strong>$mailbox</strong> on an IMAP or NNTP server.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>     <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$mailbox</strong>  The mailbox name, see <strong>imap_open()</strong> for more information
                             
                             Passing untrusted data to this parameter is insecure, unless
                             imap.enable_insecure_rsh is disabled.
  <info>int</info>              <strong>$flags</strong>    The <strong>$flags</strong> are a bit mask with one or more of the following:
                             <info>OP_READONLY</info> - Open mailbox read-only <info>OP_ANONYMOUS</info> - Don't use or update
                             a .newsrc for news (NNTP only) <info>OP_HALFOPEN</info> - For IMAP and NNTP names,
                             open a connection but don't open a mailbox. <info>OP_EXPUNGE</info> - Silently
                             expunge recycle stream <info>CL_EXPUNGE</info> - Expunge mailbox automatically upon
                             mailbox close (see also <strong>imap_delete()</strong> and <strong>imap_expunge()</strong>)
                             
                             <info>OP_READONLY</info> - Open mailbox read-only
                             
                             <info>OP_ANONYMOUS</info> - Don't use or update a .newsrc for news (NNTP only)
                             
                             <info>OP_HALFOPEN</info> - For IMAP and NNTP names, open a connection but don't open
                             a mailbox.
                             
                             <info>OP_EXPUNGE</info> - Silently expunge recycle stream
                             
                             <info>CL_EXPUNGE</info> - Expunge mailbox automatically upon mailbox close (see also
                             <strong>imap_delete()</strong> and <strong>imap_expunge()</strong>)
  <info>int</info>              <strong>$retries</strong>  Number of maximum connect attempts

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the stream is reopened, <info>false</info> otherwise.


id: imap_rfc822_parse_adrlist
type: function
doc:
<comment>Description:</comment>
  Parses an address string
  
  Parses the address string as defined in RFC2822 and for each address.

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>            A string containing addresses
  <info>string</info>  <strong>$default_hostname</strong>  The default host name

<comment>Return:</comment>
  <info>array</info>  Returns an array of objects. The objects properties are:
         
          mailbox  - the mailbox name (username)  host - the host name  personal - the personal name
         adl - at domain source route
         
         mailbox  - the mailbox name (username)
         
         host - the host name
         
         personal - the personal name
         
         adl - at domain source route

<comment>See Also:</comment>
   * <strong>imap_rfc822_parse_headers()</strong>


id: imap_rfc822_parse_headers
type: function
doc:
<comment>Description:</comment>
  Parse mail headers from a string
  
  Gets an object of various header elements, similar to  <strong>imap_header()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$headers</strong>           The parsed headers data
  <info>string</info>  <strong>$default_hostname</strong>  The default host name

<comment>Return:</comment>
  <info>stdClass</info>  Returns an object similar to the one returned by <strong>imap_header()</strong>, except for the flags and
            other  properties that come from the IMAP server.

<comment>See Also:</comment>
   * <strong>imap_rfc822_parse_adrlist()</strong>


id: imap_rfc822_write_address
type: function
doc:
<comment>Description:</comment>
  Returns a properly formatted email address given the mailbox, host, and personal info
  
  Returns a properly formatted email address as defined in RFC2822 given the needed information.

<comment>Param:</comment>
  <info>string</info>  <strong>$mailbox</strong>   The mailbox name, see <strong>imap_open()</strong> for more information
                     
                     Passing untrusted data to this parameter is insecure, unless
                     imap.enable_insecure_rsh is disabled.
  <info>string</info>  <strong>$hostname</strong>  The email host part
  <info>string</info>  <strong>$personal</strong>  The name of the account owner

<comment>Return:</comment>
  <info>string|false</info>  Returns a string properly formatted email address as defined in RFC2822,  或者在失败
                时返回 <info>false</info>.


id: imap_savebody
type: function
doc:
<comment>Description:</comment>
  Save a specific body section to a file
  
  Saves a part or the whole body of the specified message.

<comment>Param:</comment>
  <info>IMAP\Connection</info>      <strong>$imap</strong>         <class>IMAP\Connection</class> 实例。
  <info>resource|string|int</info>  <strong>$file</strong>         The path to the saved file as a string, or a valid file
                                     descriptor returned by <strong>fopen()</strong>.
  <info>int</info>                  <strong>$message_num</strong>  The message number
  <info>string</info>               <strong>$section</strong>      The part number. It is a string of integers delimited by period
                                     which index into a body part list as per the IMAP4
                                     specification
  <info>int</info>                  <strong>$flags</strong>        A bitmask with one or more of the following: <info>FT_UID</info> - The
                                     <strong>$message_num</strong> is a UID <info>FT_PEEK</info> - Do not set the \Seen flag if
                                     not already set <info>FT_INTERNAL</info> - The return string is in internal
                                     format, will not canonicalize to CRLF.
                                     
                                     <info>FT_UID</info> - The <strong>$message_num</strong> is a UID
                                     
                                     <info>FT_PEEK</info> - Do not set the \Seen flag if not already set
                                     
                                     <info>FT_INTERNAL</info> - The return string is in internal format, will not
                                     canonicalize to CRLF.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imap_fetchbody()</strong>


id: imap_scan
type: function
doc:
<comment>Description:</comment>
  别名 imap_listscan
  
  此函数是该函数的别名： <strong>imap_listscan()</strong>.


id: imap_search
type: function
doc:
<comment>Description:</comment>
  This function returns an array of messages matching the given search criteria
  
  This function performs a search on the mailbox currently opened in the given IMAP stream.
  
  For example, to match all unanswered messages sent by Mom, you'd use: "UNANSWERED FROM mom".
  Searches appear to be case insensitive. This list of criteria is from a reading of the UW c-client
  source code and may be incomplete or inaccurate (see also RFC1176,  section "tag SEARCH
  search_criteria").

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>      <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$criteria</strong>  A string, delimited by spaces, in which the following keywords are
                              allowed. Any multi-word arguments (e.g. <return>FROM "joey smith"</return>) must be
                              quoted. Results will match all <strong>$criteria</strong> entries.  ALL - return all
                              messages matching the rest of the criteria  ANSWERED - match messages
                              with the \\ANSWERED flag set  BCC "string" - match messages with
                              "string" in the Bcc: field  BEFORE "date" - match messages with Date:
                              before "date"  BODY "string" - match messages with "string" in the
                              body of the message  CC "string" - match messages with "string" in the
                              Cc: field  DELETED - match deleted messages  FLAGGED - match messages
                              with the \\FLAGGED (sometimes referred to as Important or Urgent) flag
                              set  FROM "string" - match messages with "string" in the From: field
                              KEYWORD "string" - match messages with "string" as a keyword  NEW -
                              match new messages  OLD - match old messages  ON "date" - match
                              messages with Date: matching "date"  RECENT - match messages with the
                              \\RECENT flag set  SEEN - match messages that have been read (the
                              \\SEEN flag is set)  SINCE "date" - match messages with Date: after
                              "date"  SUBJECT "string" - match messages with "string" in the
                              Subject:  TEXT "string" - match messages with text "string"  TO
                              "string" - match messages with "string" in the To:  UNANSWERED - match
                              messages that have not been answered  UNDELETED - match messages that
                              are not deleted  UNFLAGGED - match messages that are not flagged
                              UNKEYWORD "string" - match messages that do not have the keyword
                              "string"  UNSEEN - match messages which have not been read yet
                              
                              ALL - return all messages matching the rest of the criteria
                              
                              ANSWERED - match messages with the \\ANSWERED flag set
                              
                              BCC "string" - match messages with "string" in the Bcc: field
                              
                              BEFORE "date" - match messages with Date: before "date"
                              
                              BODY "string" - match messages with "string" in the body of the
                              message
                              
                              CC "string" - match messages with "string" in the Cc: field
                              
                              DELETED - match deleted messages
                              
                              FLAGGED - match messages with the \\FLAGGED (sometimes referred to as
                              Important or Urgent) flag set
                              
                              FROM "string" - match messages with "string" in the From: field
                              
                              KEYWORD "string" - match messages with "string" as a keyword
                              
                              NEW - match new messages
                              
                              OLD - match old messages
                              
                              ON "date" - match messages with Date: matching "date"
                              
                              RECENT - match messages with the \\RECENT flag set
                              
                              SEEN - match messages that have been read (the \\SEEN flag is set)
                              
                              SINCE "date" - match messages with Date: after "date"
                              
                              SUBJECT "string" - match messages with "string" in the Subject:
                              
                              TEXT "string" - match messages with text "string"
                              
                              TO "string" - match messages with "string" in the To:
                              
                              UNANSWERED - match messages that have not been answered
                              
                              UNDELETED - match messages that are not deleted
                              
                              UNFLAGGED - match messages that are not flagged
                              
                              UNKEYWORD "string" - match messages that do not have the keyword
                              "string"
                              
                              UNSEEN - match messages which have not been read yet
  <info>int</info>              <strong>$flags</strong>     Valid values for <strong>$flags</strong> are  <info>SE_UID</info>, which causes the returned array
                              to contain UIDs instead of messages sequence numbers.
  <info>string</info>           <strong>$charset</strong>   MIME character set to use when searching strings.

<comment>Return:</comment>
  <info>array|false</info>  Returns an array of message numbers or UIDs.
               
               Return <info>false</info> if it does not understand the search <strong>$criteria</strong> or no messages have been
               found.

<comment>See Also:</comment>
   * <strong>imap_listscan()</strong>


id: imap_set_quota
type: function
doc:
<comment>Description:</comment>
  Sets a quota for a given mailbox
  
  Sets an upper limit quota on a per mailbox basis.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>          <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$quota_root</strong>    The mailbox to have a quota set. This should follow the IMAP
                                  standard format for a mailbox: <return>user.name</return>.
  <info>int</info>              <strong>$mailbox_size</strong>  The maximum size (in KB) for the <strong>$quota_root</strong>

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imap_open()</strong>
   * <strong>imap_get_quota()</strong>


id: imap_setacl
type: function
doc:
<comment>Description:</comment>
  Sets the ACL for a given mailbox
  
  Sets the ACL for a giving mailbox.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>     <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$mailbox</strong>  The mailbox name, see <strong>imap_open()</strong> for more information
                             
                             Passing untrusted data to this parameter is insecure, unless
                             imap.enable_insecure_rsh is disabled.
  <info>string</info>           <strong>$user_id</strong>  The user to give the rights to.
  <info>string</info>           <strong>$rights</strong>   The rights to give to the user. Passing an empty string will delete
                             acl.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imap_getacl()</strong>


id: imap_setflag_full
type: function
doc:
<comment>Description:</comment>
  Sets flags on messages
  
  Causes a store to add the specified <strong>$flag</strong> to the flags set for the messages in the specified
  <strong>$sequence</strong>.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>      <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$sequence</strong>  A sequence of message numbers. You can enumerate desired messages with
                              the <return>X,Y</return> syntax, or retrieve all messages  within an interval with the
                              <return>X:Y</return> syntax
  <info>string</info>           <strong>$flag</strong>      The flags which you can set are <return>\Seen</return>,  <return>\Answered</return>, <return>\Flagged</return>, <return>\Deleted</return>,
                              and <return>\Draft</return> as defined by RFC2060.
  <info>int</info>              <strong>$options</strong>   A bit mask that may contain the single option: <info>ST_UID</info> - The sequence
                              argument contains UIDs instead of sequence numbers
                              
                              <info>ST_UID</info> - The sequence argument contains UIDs instead of sequence
                              numbers

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imap_clearflag_full()</strong>


id: imap_sort
type: function
doc:
<comment>Description:</comment>
  Gets and sort messages
  
  Gets and sorts message numbers by the given parameters.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>             <class>IMAP\Connection</class> 实例。
  <info>int</info>              <strong>$criteria</strong>         Criteria can be one (and only one) of the following: <info>SORTDATE</info> -
                                     message Date <info>SORTARRIVAL</info> - arrival date <info>SORTFROM</info> - mailbox in
                                     first From address <info>SORTSUBJECT</info> - message subject <info>SORTTO</info> -
                                     mailbox in first To address <info>SORTCC</info> - mailbox in first cc
                                     address <info>SORTSIZE</info> - size of message in octets
                                     
                                     <info>SORTDATE</info> - message Date
                                     
                                     <info>SORTARRIVAL</info> - arrival date
                                     
                                     <info>SORTFROM</info> - mailbox in first From address
                                     
                                     <info>SORTSUBJECT</info> - message subject
                                     
                                     <info>SORTTO</info> - mailbox in first To address
                                     
                                     <info>SORTCC</info> - mailbox in first cc address
                                     
                                     <info>SORTSIZE</info> - size of message in octets
  <info>bool</info>             <strong>$reverse</strong>          Whether to sort in reverse order.
  <info>int</info>              <strong>$flags</strong>            The <strong>$flags</strong> are a bitmask of one or more of the following:
                                     <info>SE_UID</info> - Return UIDs instead of sequence numbers <info>SE_NOPREFETCH</info>
                                     - Don't prefetch searched messages
                                     
                                     <info>SE_UID</info> - Return UIDs instead of sequence numbers
                                     
                                     <info>SE_NOPREFETCH</info> - Don't prefetch searched messages
  <info>string|null</info>      <strong>$search_criteria</strong>  IMAP2-format search criteria string. For details see
                                     <strong>imap_search()</strong>.
  <info>string|null</info>      <strong>$charset</strong>          MIME character set to use when sorting strings.

<comment>Return:</comment>
  <info>array|false</info>  Returns an array of message numbers sorted by the given parameters,  或者在失败时返回
               <info>false</info>.


id: imap_status
type: function
doc:
<comment>Description:</comment>
  Returns status information on a mailbox
  
  Gets status information about the given <strong>$mailbox</strong>.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>     <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$mailbox</strong>  The mailbox name, see <strong>imap_open()</strong> for more information
                             
                             Passing untrusted data to this parameter is insecure, unless
                             imap.enable_insecure_rsh is disabled.
  <info>int</info>              <strong>$flags</strong>    Valid flags are: <info>SA_MESSAGES</info> - set $status-&gt;messages to the number
                             of messages in the mailbox <info>SA_RECENT</info> - set $status-&gt;recent to the
                             number of recent messages in the mailbox <info>SA_UNSEEN</info> - set
                             $status-&gt;unseen to the number of unseen (new) messages in the
                             mailbox <info>SA_UIDNEXT</info> - set $status-&gt;uidnext to the next uid to be used
                             in the mailbox <info>SA_UIDVALIDITY</info> - set $status-&gt;uidvalidity to a
                             constant that changes when uids for the mailbox may no longer be valid
                             <info>SA_ALL</info> - set all of the above
                             
                             <info>SA_MESSAGES</info> - set $status-&gt;messages to the number of messages in the
                             mailbox
                             
                             <info>SA_RECENT</info> - set $status-&gt;recent to the number of recent messages in
                             the mailbox
                             
                             <info>SA_UNSEEN</info> - set $status-&gt;unseen to the number of unseen (new)
                             messages in the mailbox
                             
                             <info>SA_UIDNEXT</info> - set $status-&gt;uidnext to the next uid to be used in the
                             mailbox
                             
                             <info>SA_UIDVALIDITY</info> - set $status-&gt;uidvalidity to a constant that changes
                             when uids for the mailbox may no longer be valid
                             
                             <info>SA_ALL</info> - set all of the above

<comment>Return:</comment>
  <info>stdClass|false</info>  This function returns an object containing status information,  或者在失败时返回
                  <info>false</info>. The object has the following properties: <return>messages</return>, <return>recent</return>, <return>unseen</return>,
                  <return>uidnext</return>, and <return>uidvalidity</return>.
                  
                  <return>flags</return> is also set, which contains a bitmask which can be checked against any of
                  the above constants.


id: imap_subscribe
type: function
doc:
<comment>Description:</comment>
  Subscribe to a mailbox
  
  Subscribe to a new mailbox.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>     <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$mailbox</strong>  The mailbox name, see <strong>imap_open()</strong> for more information
                             
                             Passing untrusted data to this parameter is insecure, unless
                             imap.enable_insecure_rsh is disabled.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imap_unsubscribe()</strong>


id: imap_thread
type: function
doc:
<comment>Description:</comment>
  Returns a tree of threaded message
  
  Gets a tree of a threaded message.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>   <class>IMAP\Connection</class> 实例。
  <info>int</info>              <strong>$flags</strong>  

<comment>Return:</comment>
  <info>array|false</info>  <strong>imap_thread()</strong> returns an associative array containing a tree of messages threaded by
               <return>REFERENCES</return>, or <info>false</info> on error.
               
               Every message in the current mailbox will be represented by three entries in the
               resulting array: $thread["XX.num"] - current message number
               $thread["XX.next"]$thread["XX.branch"]
               
               $thread["XX.num"] - current message number
               
               $thread["XX.next"]
               
               $thread["XX.branch"]


id: imap_timeout
type: function
doc:
<comment>Description:</comment>
  Set or fetch imap timeout
  
  Sets or fetches the imap timeout.

<comment>Param:</comment>
  <info>int</info>  <strong>$timeout_type</strong>  One of the following: <info>IMAP_OPENTIMEOUT</info>, <info>IMAP_READTIMEOUT</info>, <info>IMAP_WRITETIMEOUT</info>,
                      or <info>IMAP_CLOSETIMEOUT</info>.
  <info>int</info>  <strong>$timeout</strong>       The timeout, in seconds.

<comment>Return:</comment>
  <info>int|bool</info>  If the <strong>$timeout</strong> parameter is set, this function returns <info>true</info> on success and <info>false</info> on
            failure.
            
            If <strong>$timeout</strong>  is not provided or evaluates to -1, the current timeout value of
            <strong>$timeout_type</strong> is returned as an integer.


id: imap_uid
type: function
doc:
<comment>Description:</comment>
  This function returns the UID for the given message sequence number
  
  This function returns the UID for the given message sequence number. An UID is a unique identifier
  that will not change over time while a message sequence number may change whenever the content of
  the mailbox changes.
  
  This function is the inverse of <strong>imap_msgno()</strong>.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>         <class>IMAP\Connection</class> 实例。
  <info>int</info>              <strong>$message_num</strong>  The message number.

<comment>Return:</comment>
  <info>int|false</info>  The UID of the given message.

<comment>See Also:</comment>
   * <strong>imap_msgno()</strong>


id: imap_undelete
type: function
doc:
<comment>Description:</comment>
  Unmark the message which is marked deleted
  
  Removes the deletion flag for a specified message, which is set by <strong>imap_delete()</strong> or
  <strong>imap_mail_move()</strong>.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>          <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$message_nums</strong>  A <info>string</info> representing one or more messages in IMAP4-style sequence
                                  format (<return>"n"</return>, <return>"n:m"</return>, or combination of these delimited by commas).
  <info>int</info>              <strong>$flags</strong>         

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imap_delete()</strong>
   * <strong>imap_mail_move()</strong>


id: imap_unsubscribe
type: function
doc:
<comment>Description:</comment>
  Unsubscribe from a mailbox
  
  Unsubscribe from the specified <strong>$mailbox</strong>.

<comment>Param:</comment>
  <info>IMAP\Connection</info>  <strong>$imap</strong>     <class>IMAP\Connection</class> 实例。
  <info>string</info>           <strong>$mailbox</strong>  The mailbox name, see <strong>imap_open()</strong> for more information
                             
                             Passing untrusted data to this parameter is insecure, unless
                             imap.enable_insecure_rsh is disabled.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>imap_subscribe()</strong>


id: imap_utf7_decode
type: function
doc:
<comment>Description:</comment>
  Decodes a modified UTF-7 encoded string
  
  Decodes modified UTF-7 <strong>$string</strong> into ISO-8859-1 string.
  
  This function is needed to decode mailbox names that contain certain characters which are not in
  range of printable ASCII characters.

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  A modified UTF-7 encoding string, as defined in RFC 2060, section 5.1.3.

<comment>Return:</comment>
  <info>string|false</info>  Returns a string that is encoded in ISO-8859-1 and consists of the same sequence of
                characters in <strong>$string</strong>, or <info>false</info> if <strong>$string</strong> contains invalid modified UTF-7 sequence
                or <strong>$string</strong> contains a character that is not part of ISO-8859-1 character set.

<comment>See Also:</comment>
   * <strong>imap_utf7_encode()</strong>


id: imap_utf7_encode
type: function
doc:
<comment>Description:</comment>
  Converts ISO-8859-1 string to modified UTF-7 text
  
  Converts <strong>$string</strong> to modified UTF-7 text.
  
  This is needed to encode mailbox names that contain certain characters which are not in range of
  printable ASCII characters.

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  An ISO-8859-1 string.

<comment>Return:</comment>
  <info>string</info>  Returns <strong>$string</strong> encoded with the modified UTF-7 encoding as defined in RFC 2060,  section
          5.1.3.

<comment>See Also:</comment>
   * <strong>imap_utf7_decode()</strong>


id: imap_utf8
type: function
doc:
<comment>Description:</comment>
  Converts MIME-encoded text to UTF-8
  
  Converts the given <strong>$mime_encoded_text</strong> to UTF-8, if the declared charset is known to libc-client.
  Otherwise the given text is decoded, but not converted to UTF-8.

<comment>Param:</comment>
  <info>string</info>  <strong>$mime_encoded_text</strong>  A MIME encoded string. MIME encoding method and the UTF-8
                              specification are described in RFC2047 and RFC2044 respectively.

<comment>Return:</comment>
  <info>string</info>  Returns the decoded string, if possible converted to UTF-8.

<comment>See Also:</comment>
   * <strong>imap_mime_header_decode()</strong>


id: imap_utf8_to_mutf7
type: function
doc:
<comment>Description:</comment>
  Encode a UTF-8 string to modified UTF-7
  
  Encode a UTF-8 string to modified UTF-7 (as specified in RFC 2060, section 5.1.3).
  
  This function is only available, if libcclient exports utf8_to_mutf7().

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  A UTF-8 encoded string.

<comment>Return:</comment>
  <info>string|false</info>  Returns <strong>$string</strong> converted to modified UTF-7, 或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>imap_mutf7_to_utf8()</strong>


id: implode
type: function
doc:
<comment>Description:</comment>
  用字符串连接数组元素
  
  替代写法（不支持命名参数）：
  
  遗留写法（从 PHP 7.4.0 起废弃，从 PHP 8.0.0 中移除）：
  
  用一个 <strong>$separator</strong> 字符串连接数组元素。

<comment>Param:</comment>
  <info>string</info>  <strong>$separator</strong>  可选。默认为空字符串。
  <info>array</info>   <strong>$array</strong>      要使用字符串连接的数组。

<comment>Return:</comment>
  <info>string</info>  返回一个包含所有数组元素并且顺序相同的字符串， 每个元素之间有 separator 分隔。

<comment>See Also:</comment>
   * <strong>explode()</strong>
   * <strong>preg_split()</strong>
   * <strong>http_build_query()</strong>


id: in_array
type: function
doc:
<comment>Description:</comment>
  检查数组中是否存在某个值
  
  大海捞针，在大海（<strong>$haystack</strong>）中搜索针（ <strong>$needle</strong>），如果没有设置         <strong>$strict</strong> 则使用宽松的比较。

<comment>Param:</comment>
  <info>mixed</info>  <strong>$needle</strong>    待搜索的值。
                    
                    如果 <strong>$needle</strong> 是字符串，则比较是区分大小写的。
  <info>array</info>  <strong>$haystack</strong>  待搜索的数组。
  <info>bool</info>   <strong>$strict</strong>    如果第三个参数 <strong>$strict</strong> 的值为 <info>true</info> 则 <strong>in_array()</strong> 函数还会检查 <strong>$needle</strong> 的类型是否
                    和 <strong>$haystack</strong> 中的相同。
                    
                    在 PHP 8.0.0 之前，<return>string</return> <strong>$needle</strong> 在非严格模式下将会匹配数组中的值  <return>0</return>，反之亦
                    然。这可能会导致不希望的结果。其它类型也存在类似的边缘情况。如果不是绝对确定有关
                    值的类型，请始终使用 <strong>$strict</strong> flag 以避免意外行为。

<comment>Return:</comment>
  <info>bool</info>  如果找到 <strong>$needle</strong> 则返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>array_search()</strong>
   * <strong>isset()</strong>
   * <strong>array_key_exists()</strong>


id: inet_ntop
type: function
doc:
<comment>Description:</comment>
  Converts a packed internet address to a human readable representation
  
  This function converts a 32bit IPv4, or 128bit IPv6 address (if PHP was built with IPv6 support
  enabled) into an address family appropriate string representation.

<comment>Param:</comment>
  <info>string</info>  <strong>$ip</strong>  A 32bit IPv4, or 128bit IPv6 address.

<comment>Return:</comment>
  <info>string|false</info>  Returns a string representation of the address 或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>long2ip()</strong>
   * <strong>ip2long()</strong>
   * <strong>inet_pton()</strong>


id: inet_pton
type: function
doc:
<comment>Description:</comment>
  Converts a human readable IP address to its packed in_addr representation
  
  This function converts a human readable IPv4 or IPv6 address (if PHP was built with IPv6 support
  enabled) into an address family appropriate 32bit or 128bit binary structure.

<comment>Param:</comment>
  <info>string</info>  <strong>$ip</strong>  A human readable IPv4 or IPv6 address.

<comment>Return:</comment>
  <info>string|false</info>  Returns the <return>in_addr</return> representation of the given <strong>$ip</strong>, or <info>false</info> if a syntactically
                invalid <strong>$ip</strong> is given (for example, an IPv4 address without dots or an IPv6 address
                without colons).

<comment>See Also:</comment>
   * <strong>ip2long()</strong>
   * <strong>long2ip()</strong>
   * <strong>inet_ntop()</strong>


id: inflate_add
type: function
doc:
<comment>Description:</comment>
  Incrementally inflate encoded data
  
  Incrementally inflates encoded data in the specified <strong>$context</strong>.
  
  Limitation: header information from GZIP compressed data are not made available.

<comment>Param:</comment>
  <info>InflateContext</info>  <strong>$context</strong>     A context created with <strong>inflate_init()</strong>.
  <info>string</info>          <strong>$data</strong>        A chunk of compressed data.
  <info>int</info>             <strong>$flush_mode</strong>  One of <info>ZLIB_BLOCK</info>, <info>ZLIB_NO_FLUSH</info>, <info>ZLIB_PARTIAL_FLUSH</info>, <info>ZLIB_SYNC_FLUSH</info>
                               (default), <info>ZLIB_FULL_FLUSH</info>, <info>ZLIB_FINISH</info>. Normally you will want to
                               set <info>ZLIB_NO_FLUSH</info> to maximize compression, and <info>ZLIB_FINISH</info> to
                               terminate with the last chunk of data. See the zlib manual for a
                               detailed description of these constants.

<comment>Return:</comment>
  <info>string|false</info>  Returns a chunk of uncompressed data,  或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>inflate_init()</strong>


id: inflate_get_read_len
type: function
doc:
<comment>Description:</comment>
  Get number of bytes read so far
  
  本函数还未编写文档，仅有参数列表。

<comment>Param:</comment>
  <info>InflateContext</info>  <strong>$context</strong>  

<comment>Return:</comment>
  <info>int</info>  Returns number of bytes read so far 或者在失败时返回 <info>false</info>.


id: inflate_get_status
type: function
doc:
<comment>Description:</comment>
  Get decompression status
  
  Usually returns either <info>ZLIB_OK</info> or <info>ZLIB_STREAM_END</info>.

<comment>Param:</comment>
  <info>InflateContext</info>  <strong>$context</strong>  

<comment>Return:</comment>
  <info>int</info>  Returns decompression status.


id: inflate_init
type: function
doc:
<comment>Description:</comment>
  Initialize an incremental inflate context
  
  Initialize an incremental inflate context with the specified <strong>$encoding</strong>.

<comment>Param:</comment>
  <info>int</info>    <strong>$encoding</strong>  One of the <info>ZLIB_ENCODING_*</info> constants.
  <info>array</info>  <strong>$options</strong>   An associative array which may contain the following elements: level The
                    compression level in range -1..9; defaults to -1. memory The compression memory
                    level in range 1..9; defaults to 8. window The zlib window size (logarithmic) in
                    range 8..15; defaults to 15. strategy One of <info>ZLIB_FILTERED</info>, <info>ZLIB_HUFFMAN_ONLY</info>,
                    <info>ZLIB_RLE</info>, <info>ZLIB_FIXED</info> or <info>ZLIB_DEFAULT_STRATEGY</info> (the default). dictionary A <info>string</info>
                    or an <info>array</info> of <info>strings</info> of the preset dictionary (default: no preset dictionary).
                    
                    The compression level in range -1..9; defaults to -1.
                    
                    The compression memory level in range 1..9; defaults to 8.
                    
                    The zlib window size (logarithmic) in range 8..15; defaults to 15.
                    
                    One of <info>ZLIB_FILTERED</info>, <info>ZLIB_HUFFMAN_ONLY</info>, <info>ZLIB_RLE</info>, <info>ZLIB_FIXED</info> or
                    <info>ZLIB_DEFAULT_STRATEGY</info> (the default).
                    
                    A <info>string</info> or an <info>array</info> of <info>strings</info> of the preset dictionary (default: no preset
                    dictionary).

<comment>Return:</comment>
  <info>InflateContext|false</info>  Returns an inflate context resource (<return>zlib.inflate</return>) on success,  或者在失败时
                        返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>inflate_add()</strong>
   * <strong>deflate_init()</strong>


id: ini_get
type: function
doc:
<comment>Description:</comment>
  获取一个配置选项的值
  
  成功时返回配置选项的值。

<comment>Param:</comment>
  <info>string</info>  <strong>$option</strong>  配置选项名称。

<comment>Return:</comment>
  <info>string|false</info>  成功是返回配置选项值的字符串，<return>null</return> 的值则返回空字符串。如果配置选项不存在，将会返回
                <info>false</info>。

<comment>See Also:</comment>
   * <strong>get_cfg_var()</strong>
   * <strong>ini_get_all()</strong>
   * <strong>ini_restore()</strong>
   * <strong>ini_set()</strong>


id: ini_get_all
type: function
doc:
<comment>Description:</comment>
  获取所有配置选项
  
  获取所有已注册的配置选项

<comment>Param:</comment>
  <info>string|null</info>  <strong>$extension</strong>  可选的扩展名称。如果不是 <info>null</info> 或字符串 <return>core</return>，此函数仅仅返回指定扩展的选
                           项。
  <info>bool</info>         <strong>$details</strong>    获取详细设置或者仅仅是每个设置的当前值。 默认是 <info>true</info>（获取详细信息）。

<comment>Return:</comment>
  <info>array|false</info>  返回一个关联数组，指令名称是数组的键。 如果 <strong>$extension</strong> 不存在，返回 <info>false</info> 并产生
               <info>E_WARNING</info> 级错误。
               
               当 <strong>$details</strong> 为 <info>true</info>（默认），数组会包含 <return>global_value</return>（php.ini 中的设置）、
               <return>local_value</return>（可能是 <strong>ini_set()</strong> 或 .htaccess 中的设置） 以及 <return>access</return>（访问级别）。
               
               当 <strong>$details</strong> 为 <info>false</info>，这个值会是选项的当前值。
               
               参见手册章节中访问级别含义的信息。
               
               指令可以有多个访问级别，这也是为什么 <return>access</return> 会显示适当的位掩码。

<comment>See Also:</comment>
   * 
   * <strong>ini_get()</strong>
   * <strong>ini_restore()</strong>
   * <strong>ini_set()</strong>
   * <strong>get_loaded_extensions()</strong>
   * <strong>phpinfo()</strong>
   * ReflectionExtension::getINIEntries


id: ini_parse_quantity
type: function
doc:
<comment>Description:</comment>
  Get interpreted size from ini shorthand syntax
  
  Returns the interpreted size in bytes on success from an ini shorthand.

<comment>Param:</comment>
  <info>string</info>  <strong>$shorthand</strong>  Ini shorthand to parse, must be a number followed by an optional multiplier.
                       The following multipliers are supported: <return>k</return>/<return>K</return> (<return>1024</return>), <return>m</return>/<return>M</return> (<return>1048576</return>), <return>g</return>/<return>G</return>
                      (<return>1073741824</return>).
                       The number can be a decimal, hex (prefixed with <return>0x</return> or <return>0X</return>), octal (prefixed
                      with <return>0o</return>, <return>0O</return> or <return>0</return>) or binary (prefixed with <return>0b</return> or <return>0B</return>)

<comment>Return:</comment>
  <info>int</info>  Returns the interpreted size in bytes as an <info>int</info>.

<comment>See Also:</comment>
   * <strong>ini_get()</strong>


id: ini_restore
type: function
doc:
<comment>Description:</comment>
  恢复配置选项的值
  
  恢复指定的配置选项到它的原始值。

<comment>Param:</comment>
  <info>string</info>  <strong>$option</strong>  配置选项名称。

<comment>Return:</comment>
  <info>void</info>  没有返回值。

<comment>See Also:</comment>
   * <strong>ini_get()</strong>
   * <strong>ini_get_all()</strong>
   * <strong>ini_set()</strong>


id: ini_set
type: function
doc:
<comment>Description:</comment>
  为一个配置选项设置值
  
  设置指定配置选项的值。这个选项会在脚本运行时保持新的值，并在脚本结束时恢复。

<comment>Param:</comment>
  <info>string</info>                      <strong>$option</strong>  不是所有有效的选项都能够用 <strong>ini_set()</strong> 来改变的。 这里有个有效
                                       选项的清单附录。
  <info>string|int|float|bool|null</info>  <strong>$value</strong>   选项新的值。

<comment>Return:</comment>
  <info>string|false</info>  成功时返回旧的值，失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>get_cfg_var()</strong>
   * <strong>ini_get()</strong>
   * <strong>ini_get_all()</strong>
   * <strong>ini_restore()</strong>
   * 如何改变配置选项


id: inotify_add_watch
type: function
doc:
<comment>Description:</comment>
  添加监听到已初始化的 inotify 实例
  
  <strong>inotify_add_watch()</strong> 为 <strong>$pathname</strong>  指定的文件或目录添加新的监听，或修改已存在的监听。
  
  在已监听的对象上使用 <strong>inotify_add_watch()</strong> 来替换当前的监听。（或）使用 <info>IN_MASK_ADD</info>  常量添加监听事
  件。

<comment>Param:</comment>
  <info>resource</info>  <strong>$inotify_instance</strong>  <strong>inotify_init()</strong>返回的资源
  <info>string</info>    <strong>$pathname</strong>          要监听的文件或目录
  <info>int</info>       <strong>$mask</strong>              监听事件。详情见 预定义常量。

<comment>Return:</comment>
  <info>int</info>  返回值是一个唯一的（inotify 实例范围内）监听描述符。

<comment>See Also:</comment>
   * <strong>inotify_init()</strong>


id: inotify_init
type: function
doc:
<comment>Description:</comment>
  初始化 inotify 实例
  
  初始化 <strong>inotify_add_watch()</strong> 使用的 inotify 实例

<comment>Return:</comment>
  <info>resource</info>  返回资源流或发生错误时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>inotify_add_watch()</strong>
   * <strong>inotify_rm_watch()</strong>
   * <strong>inotify_queue_len()</strong>
   * <strong>inotify_read()</strong>
   * <strong>fclose()</strong>


id: inotify_queue_len
type: function
doc:
<comment>Description:</comment>
  如果有待处理事件，返回大于零的数字
  
  可以通过此函数知道 <strong>inotify_read()</strong>  是否会阻塞。如果返回大于零的数字，表示有待处理的事件，
  <strong>inotify_read()</strong>  不会阻塞。

<comment>Param:</comment>
  <info>resource</info>  <strong>$inotify_instance</strong>  <strong>inotify_init()</strong>返回的资源

<comment>Return:</comment>
  <info>int</info>  如果有待处理事件，返回大于零的数字。

<comment>See Also:</comment>
   * <strong>inotify_init()</strong>
   * <strong>stream_select()</strong>
   * <strong>stream_set_blocking()</strong>


id: inotify_read
type: function
doc:
<comment>Description:</comment>
  从 inotify 实例读取事件
  
  从 inotify 实例读取 inotify 事件。

<comment>Param:</comment>
  <info>resource</info>  <strong>$inotify_instance</strong>  <strong>inotify_init()</strong>返回的资源

<comment>Return:</comment>
  <info>array</info>  返回 inotify 事件数组。在没有待处理事件或 <strong>$inotify_instance</strong>  非阻塞时返回 <info>false</info>。事件发生时
         都会返回包含以下键的数组： wd 是由 <strong>inotify_add_watch()</strong>  返回的监听描述符mask 是 events 的位
         掩码cookie 是连接相关事件（例如：<info>IN_MOVE_FROM</info>  和 <info>IN_MOVE_TO</info>）的唯一 idname 是文件名（例
         如：监听目录中被修改的文件）

<comment>See Also:</comment>
   * <strong>inotify_init()</strong>
   * <strong>stream_select()</strong>
   * <strong>stream_set_blocking()</strong>
   * <strong>inotify_queue_len()</strong>


id: inotify_rm_watch
type: function
doc:
<comment>Description:</comment>
  移除 inotify 实例的监听
  
  <strong>inotify_rm_watch()</strong> 移除 <strong>inotify_instance()</strong>  实例的 <strong>$watch_descriptor</strong> 监听。

<comment>Param:</comment>
  <info>resource</info>  <strong>$inotify_instance</strong>  <strong>inotify_init()</strong>返回的资源
  <info>int</info>       <strong>$watch_descriptor</strong>  实例要移除的监听。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>inotify_init()</strong>


id: intdiv
type: function
doc:
<comment>Description:</comment>
  对除法结果取整
  
  返回 <strong>$num1</strong> 除以 <strong>$num2</strong> 商数的整数部分。

<comment>Param:</comment>
  <info>int</info>  <strong>$num1</strong>  被除数。
  <info>int</info>  <strong>$num2</strong>  除数。

<comment>Return:</comment>
  <info>int</info>  <strong>$num1</strong> 除以 <strong>$num2</strong> 的商，对该商取整。

<comment>See Also:</comment>
   * <return>/</return>——浮点除法
   * <return>%</return>——整数取模
   * <strong>fmod()</strong>——浮点数取模


id: interface_exists
type: function
doc:
<comment>Description:</comment>
  检查接口是否已被定义
  
  检查接口是否已被定义。

<comment>Param:</comment>
  <info>string</info>  <strong>$interface</strong>  接口名。
  <info>bool</info>    <strong>$autoload</strong>   如果尚未加载，是否自动加载。

<comment>Return:</comment>
  <info>bool</info>  本函数在由 <strong>$interface</strong> 给出的接口已定义时返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>get_declared_interfaces()</strong>
   * <strong>class_implements()</strong>
   * <strong>class_exists()</strong>
   * <strong>enum_exists()</strong>


id: intl_error_name
type: function
doc:
<comment>Description:</comment>
  Get symbolic name for a given error code
  
  Return ICU error code name.

<comment>Param:</comment>
  <info>int</info>  <strong>$errorCode</strong>  ICU error code.

<comment>Return:</comment>
  <info>string</info>  The returned string will be the same as the name of the error code constant.

<comment>See Also:</comment>
   * <strong>intl_is_failure()</strong>
   * <strong>intl_get_error_code()</strong>
   * <strong>intl_get_error_message()</strong>


id: intl_get_error_code
type: function
doc:
<comment>Description:</comment>
  Get the last error code
  
  Useful to handle errors occurred in static methods when there's no object to get error code from.

<comment>Return:</comment>
  <info>int</info>  Error code returned by the last API function call.

<comment>See Also:</comment>
   * <strong>intl_is_failure()</strong>
   * <strong>intl_error_name()</strong>
   * <strong>intl_get_error_message()</strong>
   * <strong>collator_get_error_code()</strong>
   * <strong>numfmt_get_error_code()</strong>


id: intl_get_error_message
type: function
doc:
<comment>Description:</comment>
  Get description of the last error
  
  Get error message from last internationalization function called.

<comment>Return:</comment>
  <info>string</info>  Description of an error occurred in the last API function call.

<comment>See Also:</comment>
   * <strong>intl_error_name()</strong>
   * <strong>intl_get_error_code()</strong>
   * <strong>intl_is_failure()</strong>
   * <strong>collator_get_error_message()</strong>
   * <strong>numfmt_get_error_message()</strong>


id: intl_is_failure
type: function
doc:
<comment>Description:</comment>
  Check whether the given error code indicates failure
  
  

<comment>Param:</comment>
  <info>int</info>  <strong>$errorCode</strong>  is a value that returned by functions: <strong>intl_get_error_code()</strong>,
                   <strong>collator_get_error_code()</strong> .

<comment>Return:</comment>
  <info>bool</info>  <info>true</info> if it the code indicates some failure, and <info>false</info> in case of success or a warning.

<comment>See Also:</comment>
   * <strong>intl_get_error_code()</strong>
   * <strong>collator_get_error_code()</strong>
   * <strong>Collator-getErrorCode()</strong>


id: intval
type: function
doc:
<comment>Description:</comment>
  获取变量的整数值
  
  通过使用指定的进制 <strong>$base</strong> 转换（默认是十进制），返回变量 <strong>$value</strong> 的 <info>int</info> 数值。 <strong>intval()</strong> 不能用于
  object，否则会产生 <info>E_WARNING</info> 错误并返回 1。

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  要转换成 integer 的数量值
  <info>int</info>    <strong>$base</strong>   转化所使用的进制
                 
                 如果 <strong>$base</strong> 是 0，通过检测 <strong>$value</strong> 的格式来决定使用的进制：  如果字符串包括了 "0x"
                 (或 "0X") 的前缀，使用 16 进制 (hex)；否则，  如果字符串以 "0b" (或 "0B") 开头，使
                 用 2 进制 (binary)；否则，  如果字符串以 "0" 开始，使用 8 进制(octal)；否则，  将使
                 用 10 进制 (decimal)。
                 
                 如果字符串包括了 "0x" (或 "0X") 的前缀，使用 16 进制 (hex)；否则，
                 
                 如果字符串以 "0b" (或 "0B") 开头，使用 2 进制 (binary)；否则，
                 
                 如果字符串以 "0" 开始，使用 8 进制(octal)；否则，
                 
                 将使用 10 进制 (decimal)。

<comment>Return:</comment>
  <info>int</info>  成功时返回 <strong>$value</strong> 的 integer 值，失败时返回 0。 空的 array 返回 0，非空的 array 返回 1。
       
       最大的值取决于操作系统。 32 位系统最大带符号的 integer 范围是 -2147483648 到 2147483647。举
       例，在这样的系统上，<return>intval('1000000000000')</return> 会返回 2147483647。64 位系统上，最大带符号的
       integer 值是 9223372036854775807。
       
       字符串有可能返回 0，虽然取决于字符串最左侧的字符。 使用 整型转换 的共同规则。

<comment>See Also:</comment>
   * <strong>boolval()</strong>
   * <strong>floatval()</strong>
   * <strong>strval()</strong>
   * <strong>settype()</strong>
   * <strong>is_numeric()</strong>
   * 类型转换的判别
   * BCMath 任意精度数学函数


id: ip2long
type: function
doc:
<comment>Description:</comment>
  将 IPV4 的字符串互联网协议转换成长整型数字
  
  函数 <strong>ip2long()</strong> 返回 IPV4 网络地址的长整型格式，从标准网络地址格式(点字符串)转化得到。
  
  <strong>ip2long()</strong> 还可以与非完整IP进行工作。阅读
  http://ps-2.kev009.com/wisclibrary/aix52/usr/share/man/info/en_US/a_doc_lib/libs/commtrf2/inet_addr.htm
  获得更多信息。

<comment>Param:</comment>
  <info>string</info>  <strong>$ip</strong>  一个标准格式的地址。

<comment>Return:</comment>
  <info>int|false</info>  返回IP地址转换后的数字，如果 <strong>$ip</strong> 无效，则为 <info>false</info>。

<comment>See Also:</comment>
   * <strong>long2ip()</strong>
   * <strong>sprintf()</strong>


id: iptcembed
type: function
doc:
<comment>Description:</comment>
  嵌入二进制 IPTC 数据到 JPEG 图像中
  
  嵌入二进制 IPTC 数据到 JPEG 图像中。

<comment>Param:</comment>
  <info>string</info>  <strong>$iptc_data</strong>  写入的数据。
  <info>string</info>  <strong>$filename</strong>   JPEG 图片的路径。
  <info>int</info>     <strong>$spool</strong>      Spool flag。如果 spool flag 小于 2，然后 JPEG 将使用字符串返回。否则 JPEG 将打
                      印到 STDOUT。

<comment>Return:</comment>
  <info>string|bool</info>  如果 <strong>$spool</strong> 小于 2，将返回 JPEG， 或者在失败时返回 <info>false</info>。否则成功时返回 <info>true</info>  或者在
               失败时返回 <info>false</info>。


id: iptcparse
type: function
doc:
<comment>Description:</comment>
  将二进制 IPTC 块解析为单个标签
  
  将 IPTC 块解析为单个标签。

<comment>Param:</comment>
  <info>string</info>  <strong>$iptc_block</strong>  二进制的 IPTC 块。

<comment>Return:</comment>
  <info>array|false</info>  返回一个数组，用 tagmarker 作为索引，以 value 为值。如果出错或未发现 IPTC 数据则返回
               <info>false</info>。


id: is_a
type: function
doc:
<comment>Description:</comment>
  检查对象是否属于一个给定的类型或子类型。
  
  检查指定 <strong>$object_or_class</strong> 是否属于此对象类型或具有此对象类型作为其超类（父类）。

<comment>Param:</comment>
  <info>mixed</info>   <strong>$object_or_class</strong>  类名或者实例对象。
  <info>string</info>  <strong>$class</strong>            类名或接口名。
  <info>bool</info>    <strong>$allow_string</strong>     如果本参数设置为 <info>false</info>，<strong>$object_or_class</strong> 就不允许传入字符串类名。 这也会
                            在类不存在时，阻止调用自动加载器（autoloader）。

<comment>Return:</comment>
  <info>bool</info>  如果对象属于该对象类型或该类是此对象类型的超类（父类）时返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>get_class()</strong>
   * <strong>get_parent_class()</strong>
   * <strong>is_subclass_of()</strong>


id: is_array
type: function
doc:
<comment>Description:</comment>
  检测变量是否是数组
  
  检测变量是否是数组。

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  待检测的变量。

<comment>Return:</comment>
  <info>bool</info>  如果 <strong>$value</strong> 是 <info>array</info>，则返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>array_is_list()</strong>
   * <strong>is_float()</strong>
   * <strong>is_int()</strong>
   * <strong>is_string()</strong>
   * <strong>is_object()</strong>


id: is_bool
type: function
doc:
<comment>Description:</comment>
  检测变量是否是布尔值
    
  
  检查变量是否为布尔值。

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  要检查的变量。

<comment>Return:</comment>
  <info>bool</info>  如果 <strong>$value</strong> 是布尔值则返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>is_float()</strong>
   * <strong>is_int()</strong>
   * <strong>is_string()</strong>
   * <strong>is_object()</strong>
   * <strong>is_array()</strong>


id: is_callable
type: function
doc:
<comment>Description:</comment>
  验证值是否可以在当前范围内作为函数调用。
    
  
  验证值是 <info>callable</info>。

<comment>Param:</comment>
  <info>mixed</info>   <strong>$value</strong>          要验证的值
  <info>bool</info>    <strong>$syntax_only</strong>    如果设置为 <info>true</info>，则函数仅验证 <strong>$value</strong> 可能是函数或方法。它仅拒绝不是字符串
                          的简单变量，或者不能用作回调的有效结构的数组。只有 2 个条目有效，一个是对
                          象或者字符串，其次是字符串。
  <info>string</info>  <strong>$callable_name</strong>  接受“可调用的名称”。下面的例子是“someClass::someMethod”。注意，尽管
                          someClass::SomeMethod() 暗示是可调用的静态方法，但事实并非如此。

<comment>Return:</comment>
  <info>bool</info>  如果 <strong>$value</strong> 可调用则返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>function_exists()</strong>
   * <strong>method_exists()</strong>


id: is_countable
type: function
doc:
<comment>Description:</comment>
  验证变量内容是否为可数值
    
  
  验证变量的内容是数组还是实现了 <class>Countable</class> 接口的对象

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  需要检查的值

<comment>Return:</comment>
  <info>bool</info>  如果 <strong>$value</strong> 是可数值，返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>is_array()</strong>
   * <strong>is_object()</strong>
   * <strong>is_iterable()</strong>
   * <strong>is_bool()</strong>


id: is_dir
type: function
doc:
<comment>Description:</comment>
  判断给定文件名是否是一个目录
  
  判断给定文件名是否是一个目录。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  文件路径，如果 <strong>$filename</strong> 是相对文件名，会相对于当前工作目录进行检查。如果
                     <strong>$filename</strong> 是符号链接或者硬链接，然后解析链接并检查。如果启用了 open_basedir，则
                     会应用更多限制。

<comment>Return:</comment>
  <info>bool</info>  如果文件名存在，并且是个目录，返回 <info>true</info>，否则返回<info>false</info>。

<comment>See Also:</comment>
   * <strong>chdir()</strong>
   * <strong>dir()</strong>
   * <strong>opendir()</strong>
   * <strong>is_file()</strong>
   * <strong>is_link()</strong>


id: is_executable
type: function
doc:
<comment>Description:</comment>
  判断给定文件名是否可执行
  
  判断给定文件名是否可执行。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  文件的路径。

<comment>Return:</comment>
  <info>bool</info>  如果文件存在且可执行则返回 <info>true</info>，错误时返回 <info>false</info>。在 POSIX 系统中，如果设置了文件权限的可执
        行位，则文件可执行。对于 Windows，请参阅下面的注释。

<comment>See Also:</comment>
   * <strong>is_file()</strong>
   * <strong>is_link()</strong>


id: is_file
type: function
doc:
<comment>Description:</comment>
  判断给定文件名是否为一个正常的文件
  
  判断给定文件名是否为一个正常的文件。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  文件的路径。

<comment>Return:</comment>
  <info>bool</info>  如果文件存在且为正常的文件则返回 <info>true</info>，否则返回 <info>false</info>。
        
        因为 PHP 的整数类型是有符号整型而且很多平台使用 32 位整型，对 2GB
        以上的文件，一些文件系统函数可能返回无法预期的结果。

<comment>See Also:</comment>
   * <strong>is_dir()</strong>
   * <strong>is_link()</strong>
   * <class>SplFileInfo</class>


id: is_finite
type: function
doc:
<comment>Description:</comment>
  判断浮点数是否是有效的有限值
  
  返回指定的 <strong>$num</strong> 是否是有限浮点数。
  
  有限浮点数既不是 <return>NAN</return>（<strong>is_nan()</strong>）也不是无限的（<strong>is_infinite()</strong>）。

<comment>Param:</comment>
  <info>float</info>  <strong>$num</strong>  要检查的 <info>float</info>

<comment>Return:</comment>
  <info>bool</info>  如果 <strong>$num</strong> 不是 <return>NAN</return>、<return>INF</return> 或 <return>-INF</return>，那么为 <info>true</info>，否则为 <info>false</info>。

<comment>See Also:</comment>
   * <strong>is_infinite()</strong>
   * <strong>is_nan()</strong>


id: is_float
type: function
doc:
<comment>Description:</comment>
  查找变量的类型是否是浮点型
  
  查找指定变量的类型是否是浮点型。
  
  测试变量是数字还是数字字符串（如表单输入，始终是字符串），必须使用 <strong>is_numeric()</strong>。

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  要求值的变量。

<comment>Return:</comment>
  <info>bool</info>  如果 <strong>$value</strong> 是 <info>float</info>，返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>is_bool()</strong>
   * <strong>is_int()</strong>
   * <strong>is_numeric()</strong>
   * <strong>is_string()</strong>
   * <strong>is_array()</strong>
   * <strong>is_object()</strong>


id: is_infinite
type: function
doc:
<comment>Description:</comment>
  判断浮点数是否为无限值
  
  返回指定的 <strong>$num</strong> 是否是 <return>INF</return> 或 <return>-INF</return>。

<comment>Param:</comment>
  <info>float</info>  <strong>$num</strong>  要检查的 <info>float</info>

<comment>Return:</comment>
  <info>bool</info>  如果 <strong>$num</strong> 是 <return>INF</return> 或 <return>-INF</return>，返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>is_finite()</strong>
   * <strong>is_nan()</strong>


id: is_int
type: function
doc:
<comment>Description:</comment>
  检测变量是否是整数
  
  检测变量的类型是否为整数（integer）。
  
  若想检测变量是否是数字或数字字符串（如表单输入，它们通常为字符串），则必须使用 <strong>is_numeric()</strong> 。

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  要检测的变量。

<comment>Return:</comment>
  <info>bool</info>  如果 <strong>$value</strong> 是 <info>int</info>，则返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>is_bool()</strong>
   * <strong>is_float()</strong>
   * <strong>is_numeric()</strong>
   * <strong>is_string()</strong>
   * <strong>is_array()</strong>
   * <strong>is_object()</strong>


id: is_iterable
type: function
doc:
<comment>Description:</comment>
  验证变量的内容是否为可迭代值
    
  
  验证变量的内容是否被 <info>iterable</info> 伪类型接受，即不是 <info>array</info>，就是实现了 <class>Traversable</class> 接口的对象。

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  验证的值

<comment>Return:</comment>
  <info>bool</info>  如果 <strong>$value</strong> 可迭代返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>is_array()</strong>


id: is_link
type: function
doc:
<comment>Description:</comment>
  判断给定文件名是否为一个符号连接
  
  判断给定文件名是否为一个符号连接。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  文件的路径。

<comment>Return:</comment>
  <info>bool</info>  如果文件存在并且是一个符号连接则返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>is_dir()</strong>
   * <strong>is_file()</strong>
   * <strong>readlink()</strong>


id: is_nan
type: function
doc:
<comment>Description:</comment>
  判断浮点数是否是否为 NAN
  
  返回指定的 <strong>$num</strong> 是否是 <return>NAN</return>（非数值）。
  
  <return>NAN</return> 是从未定义的数学运算中返回的，例如传递的参数在函数的输入域之外的时候。平方根（<strong>sqrt()</strong>）仅对正数
  定义，传递负数将导致 <return>NAN</return>。返回 <return>NAN</return> 的其它操作示例有 <return>INF</return> 除以 <return>INF</return> 以及涉及现有 <return>NAN</return> 值的任何操作。
  
  尽管名字叫 Not A Number，但 <return>NAN</return> 是有效的 <info>float</info> 类型。
  
  <return>NAN</return> 不能与 <return>NAN</return> 进行比较。要检测浮点数是否是 <return>NAN</return>，必须使用 <strong>is_nan()</strong>。使用 $float === NAN 检测将不起
  作用。

<comment>Param:</comment>
  <info>float</info>  <strong>$num</strong>  要检查的 <info>float</info>

<comment>Return:</comment>
  <info>bool</info>  如果 <strong>$num</strong> 是 <return>NAN</return>，返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>is_finite()</strong>
   * <strong>is_infinite()</strong>


id: is_null
type: function
doc:
<comment>Description:</comment>
  检测变量是否是 null
    
  
  检测变量是否是 <info>null</info>。

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  需要检测的变量。

<comment>Return:</comment>
  <info>bool</info>  如果 <strong>$value</strong> 是 <info>null</info>，返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <info>null</info> 类型
   * <strong>isset()</strong>
   * <strong>is_bool()</strong>
   * <strong>is_numeric()</strong>
   * <strong>is_float()</strong>
   * <strong>is_int()</strong>
   * <strong>is_string()</strong>
   * <strong>is_object()</strong>
   * <strong>is_array()</strong>


id: is_numeric
type: function
doc:
<comment>Description:</comment>
  检测变量是否为数字或数字字符串
       
  
  检测指定的变量是否为数字或数字字符串。

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  需要检测的变量。

<comment>Return:</comment>
  <info>bool</info>  如果 <strong>$value</strong> 是数字或数字字符串， 返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * 数字字符串
   * <strong>ctype_digit()</strong>
   * <strong>is_bool()</strong>
   * <strong>is_null()</strong>
   * <strong>is_float()</strong>
   * <strong>is_int()</strong>
   * <strong>is_string()</strong>
   * <strong>is_object()</strong>
   * <strong>is_array()</strong>
   * <strong>filter_var()</strong>


id: is_object
type: function
doc:
<comment>Description:</comment>
  查找变量是否是对象
  
  查找指定变量是否是对象。

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  要计算的变量。

<comment>Return:</comment>
  <info>bool</info>  如果 <strong>$value</strong> 是 <info>object</info>，返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>is_bool()</strong>
   * <strong>is_int()</strong>
   * <strong>is_float()</strong>
   * <strong>is_string()</strong>
   * <strong>is_array()</strong>


id: is_readable
type: function
doc:
<comment>Description:</comment>
  判断给定文件名是否可读
  
  判断给定文件名是否存在并且可读。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  文件的路径。

<comment>Return:</comment>
  <info>bool</info>  如果由 <strong>$filename</strong> 指定的文件或目录存在并且可读则返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>is_writable()</strong>
   * <strong>file_exists()</strong>
   * <strong>fgets()</strong>


id: is_real
type: function
doc:
<comment>Description:</comment>
  别名 is_float
  
  此函数是该函数的别名： <strong>is_float()</strong>.
  
  该别名已在 PHP 7.4.0 中
  废弃，并且自 PHP 8.0.0 起已被移除。


id: is_resource
type: function
doc:
<comment>Description:</comment>
  查找变量是否为资源
    
  
  查找指定变量是否为 <info>resource</info>。

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  要计算的变量。

<comment>Return:</comment>
  <info>bool</info>  如果 <strong>$value</strong> 是 <info>resource</info>，则返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * 资源类型文档
   * <strong>get_resource_type()</strong>


id: is_scalar
type: function
doc:
<comment>Description:</comment>
  检测变量是否是一个标量
    
  
  检测变量是否为标量
  
  标量变量是指 <info>int</info>、<info>float</info>、<info>string</info> 或 <info>bool</info> 类型的变量。 <info>array</info>、<info>object</info> 、 <info>resource</info> 和 <info>null</info> 类型不是标
  量。
  
  <strong>is_scalar()</strong> 不会将 <info>resource</info> 类型值视为标量， 因为当前 resources 是基于整数（integer）的抽象数据类
  型。 不能依赖该执行细节，因为它可能会改变。
  
  <strong>is_scalar()</strong> 不会将 NULL 检测为标量。

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  需要检测的变量。

<comment>Return:</comment>
  <info>bool</info>  如果 <strong>$value</strong> 是标量，则返回 <info>true</info> ，否则返回 <info>false</info> 。

<comment>See Also:</comment>
   * <strong>is_float()</strong>
   * <strong>is_int()</strong>
   * <strong>is_numeric()</strong>
   * <strong>is_real()</strong>
   * <strong>is_string()</strong>
   * <strong>is_bool()</strong>
   * <strong>is_object()</strong>
   * <strong>is_array()</strong>


id: is_soap_fault
type: function
doc:
<comment>Description:</comment>
  Checks if a SOAP call has failed
  
  This function is useful to check if the SOAP call failed, but without using exceptions. To use it,
  create a <class>SoapClient</class> object with the <return>exceptions</return> option set to zero or <info>false</info>. In this case, the SOAP
  method will return a special <class>SoapFault</class> object which encapsulates the fault details (faultcode,
  faultstring, faultactor and faultdetails).
  
  If <return>exceptions</return> is not set then SOAP call will throw an exception on error. <strong>is_soap_fault()</strong> checks
  if the given parameter is a <class>SoapFault</class> object.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$object</strong>  The object to test.

<comment>Return:</comment>
  <info>bool</info>  This will return <info>true</info> on error, and <info>false</info> otherwise.

<comment>See Also:</comment>
   * SoapClient::__construct
   * SoapFault::__construct


id: is_string
type: function
doc:
<comment>Description:</comment>
  查找变量的类型是否是字符串
  
  查找指定变量的类型是否是字符串。

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  要计算的变量。

<comment>Return:</comment>
  <info>bool</info>  如果 <strong>$value</strong> 是类型 <info>string</info>，返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>is_float()</strong>
   * <strong>is_int()</strong>
   * <strong>is_bool()</strong>
   * <strong>is_object()</strong>
   * <strong>is_array()</strong>


id: is_subclass_of
type: function
doc:
<comment>Description:</comment>
  检查对象是否继承或者实现（implement）此类
  
  检查指定的 <strong>$object_or_class</strong> 是否继承或者实现（implement） <strong>$class</strong>。

<comment>Param:</comment>
  <info>mixed</info>   <strong>$object_or_class</strong>  类名或者对象实例。如果类不存在，也不会报错。
  <info>string</info>  <strong>$class</strong>            类名
  <info>bool</info>    <strong>$allow_string</strong>     如果此参数设置为 false，将不允许将字符串类名传递给  <strong>$object_or_class</strong>。如
                            果类不存在，这也可以防止调用自动加载器。

<comment>Return:</comment>
  <info>bool</info>  如果对象 <strong>$object_or_class</strong> 属于 <strong>$class</strong> 的子类，则返回  <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>get_class()</strong>
   * <strong>get_parent_class()</strong>
   * <strong>is_a()</strong>
   * <strong>class_parents()</strong>


id: is_tainted
type: function
doc:
<comment>Description:</comment>
  Checks whether a string is tainted
  
  Checks whether a string is tainted

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  

<comment>Return:</comment>
  <info>bool</info>  Return TRUE if the string is tainted, FALSE otherwise.


id: is_uploaded_file
type: function
doc:
<comment>Description:</comment>
  判断文件是否是通过 HTTP POST 上传的
  
  如果 <strong>$filename</strong> 所给出的文件是通过 HTTP POST 上传的则返回 <info>true</info>。这可以用来确保恶意的用户无法欺骗脚
  本去访问本不能访问的文件，例如 /etc/passwd。
  
  这种检查显得格外重要，如果上传的文件有可能会造成对用户或本系统的其他用户显示其内容的话。
  
  为了能使 <strong>is_uploaded_file()</strong> 函数正常工作，必须指定类似于 $_FILES['userfile']['tmp_name'] 的变量，
  而在从客户端上传的文件名 $_FILES['userfile']['name'] 不能正常运作。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  要检查的文件名。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>move_uploaded_file()</strong>
   * $_FILES
   * 关于用法的简单例子 
     文件上传处理


id: is_writable
type: function
doc:
<comment>Description:</comment>
  判断给定的文件名是否可写
  
  如果文件存在并且可写则返回 <info>true</info>。<strong>$filename</strong> 参数可以是一个允许进行是否可写检查的目录名。
  
  记住 PHP 也许只能以运行 webserver 的用户名（通常为 'nobody'）来访问文件。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  要检查的文件名称。

<comment>Return:</comment>
  <info>bool</info>  如果文件 <strong>$filename</strong> 存在并且可写则返回 <info>true</info>。

<comment>See Also:</comment>
   * <strong>is_readable()</strong>
   * <strong>file_exists()</strong>
   * <strong>fwrite()</strong>


id: isset
type: function
doc:
<comment>Description:</comment>
  检测变量是否已声明并且其值不为 null
  
  判断一个变量是否已设置, 即变量已被声明，且其值不为 <info>null</info>。
  
  如果一个变量已经被使用 <strong>unset()</strong>  释放，它将不再被认为已设置。
  
  若使用 <strong>isset()</strong> 测试一个被赋值为 <info>null</info> 的变量，将返回 <info>false</info>。 同时要注意的是 null 字符（<return>"\0"</return>）并不等
  同于 PHP 的  <info>null</info> 常量。
  
  如果一次传入多个参数，那么 <strong>isset()</strong> 只有在全部参数都已被设置时返回 <info>true</info>。 计算过程从左至右，中途遇
  到未设置的变量时就会立即停止。

<comment>Param:</comment>
  <info>mixed</info>  <strong>$var</strong>   要检查的变量。
  <info>mixed</info>  <strong>$vars</strong>  其他变量。

<comment>Return:</comment>
  <info>bool</info>  如果 <strong>$var</strong> 存在并且值不是 <info>null</info> 则返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>empty()</strong>
   * __isset()
   * <strong>unset()</strong>
   * <strong>defined()</strong>
   * the type comparison tables
   * <strong>array_key_exists()</strong>
   * <strong>is_null()</strong>
   * 错误控制 
     @
     运算符。


id: iterator_apply
type: function
doc:
<comment>Description:</comment>
  为迭代器中每个元素调用函数
  
  循环迭代每个元素时调用函数。

<comment>Param:</comment>
  <info>Traversable</info>  <strong>$iterator</strong>  要迭代的迭代对象。
  <info>callable</info>     <strong>$callback</strong>  每个元素要调用的回调函数。此函数仅接收指定的 <strong>$args</strong>，因此默认为 null。如果
                          <return>count($args) === 3</return>，则回调函数是三个参数。  为了遍历 <strong>$iterator</strong>，此函数必须
                          返回 <info>true</info>。
                          
                          为了遍历 <strong>$iterator</strong>，此函数必须返回 <info>true</info>。
  <info>array|null</info>   <strong>$args</strong>      参数 <info>array</info>；<strong>$args</strong> 的每个元素都会作为单独的参数传递给回调 <strong>$callback</strong>。

<comment>Return:</comment>
  <info>int</info>  返回已迭代的元素个数。

<comment>See Also:</comment>
   * <strong>array_walk()</strong>


id: iterator_count
type: function
doc:
<comment>Description:</comment>
  计算迭代器中元素的个数
  
  对迭代器中的元素计数。<strong>iterator_count()</strong> 不能保留 <strong>$iterator</strong> 的当前位置。

<comment>Param:</comment>
  <info>Traversable|array</info>  <strong>$iterator</strong>  要计数的迭代器。

<comment>Return:</comment>
  <info>int</info>  <strong>$iterator</strong> 中的元素个数。


id: iterator_to_array
type: function
doc:
<comment>Description:</comment>
  复制迭代器中的元素到数组
  
  复制迭代器中的元素到数组。

<comment>Param:</comment>
  <info>Traversable|array</info>  <strong>$iterator</strong>       被复制的迭代器。
  <info>bool</info>               <strong>$preserve_keys</strong>  是否使用迭代器元素键作为索引。
                                     
                                     如果键是 <info>array</info> 或 <info>object</info>，将会生成警告。<info>null</info> 键将会转换为空字符
                                     串，<info>float</info> 键将截断为对应的 <info>int</info>，<info>resource</info> 键将生成警告并转换为它
                                     们的资源 ID，<info>bool</info> 键将转换为整数。
                                     
                                     如果此参数未设置或为 <info>true</info>，则覆盖重复的键。指定键的最后一个值将
                                     在返回的 <info>array</info> 中。设置此参数为 <info>false</info> 以获得任何情况下的所有
                                     值。

<comment>Return:</comment>
  <info>array</info>  一个数组，包含迭代器中的元素。


id: jddayofweek
type: function
doc:
<comment>Description:</comment>
  返回星期几
  
  返回星期几，根据模式不同返回 string 或 int。

<comment>Param:</comment>
  <info>int</info>  <strong>$julian_day</strong>  int 类型的儒略日数
  <info>int</info>  <strong>$mode</strong>        

<comment>Return:</comment>
  <info>int|string</info>  int 或 string 类型的公历星期几。


id: jdmonthname
type: function
doc:
<comment>Description:</comment>
  返回月份名称
  
  返回 string 类型的月份名称，<strong>$mode</strong>  告诉此函数要将儒略历转化为哪个历法以及哪个类型的月份名称。 历法
  模式模式含义值<info>CAL_MONTH_GREGORIAN_SHORT</info>公历 - 缩写Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep,
  Oct, Nov, Dec<info>CAL_MONTH_GREGORIAN_LONG</info>公历January, February, March, April, May, June, July, August,
  September, October, November, December<info>CAL_MONTH_JULIAN_SHORT</info>儒略历 - 缩写Jan, Feb, Mar, Apr, May,
  Jun, Jul, Aug, Sep, Oct, Nov, Dec<info>CAL_MONTH_JULIAN_LONG</info>儒略历January, February, March, April, May,
  June, July, August, September, October, November, December<info>CAL_MONTH_JEWISH</info>犹太历Tishri, Heshvan,
  Kislev, Tevet, Shevat, Adar, Adar I, Adar II, Nisan, Iyyar, Sivan, Tammuz, Av,
  Elul<info>CAL_MONTH_FRENCH</info>法国历Vendemiaire, Brumaire, Frimaire, Nivose, Pluviose, Ventose, Germinal,
  Floreal, Prairial, Messidor, Thermidor, Fructidor, Extra

<comment>Param:</comment>
  <info></info>     <strong>$jday</strong>  用来计算的儒略日
  <info>int</info>  <strong>$mode</strong>  历法模式（见上表）。

<comment>Return:</comment>
  <info>string</info>  指定的儒略日和 <strong>$mode</strong> 的月份的名称。


id: jdtofrench
type: function
doc:
<comment>Description:</comment>
  从儒略日数转换为法国共和历
  
  从儒略日数转换为法国共和历。

<comment>Param:</comment>
  <info>int</info>  <strong>$julian_day</strong>  int 类型的儒略日数

<comment>Return:</comment>
  <info>string</info>  string 类型，“月/日/年”格式的法国共和历日期

<comment>See Also:</comment>
   * <strong>frenchtojd()</strong>
   * <strong>cal_from_jd()</strong>


id: jdtogregorian
type: function
doc:
<comment>Description:</comment>
  将儒略日数转换为公历日期
  
  将儒略日数转换为“月/日/年”格式，string 类型的公历日期。

<comment>Param:</comment>
  <info>int</info>  <strong>$julian_day</strong>  int 类型的儒略日数

<comment>Return:</comment>
  <info>string</info>  格式为 “月/日/年”，string 类型的公历日期

<comment>See Also:</comment>
   * <strong>gregoriantojd()</strong>
   * <strong>cal_from_jd()</strong>


id: jdtojewish
type: function
doc:
<comment>Description:</comment>
  将儒略日数转换为犹太历日期
  
  儒略日数转为犹太历日期。

<comment>Param:</comment>
  <info>int</info>   <strong>$julian_day</strong>  int 类型的儒略日数。
  <info>bool</info>  <strong>$hebrew</strong>      如果参数 <strong>$hebrew</strong> 设置为 <info>true</info>，参数 <strong>$flags</strong> 可用于希伯莱语、基于 ISO-8859-8 字符
                     串编码格式的输出。
  <info>int</info>   <strong>$flags</strong>       可能由 <info>CAL_JEWISH_ADD_ALAFIM_GERESH</info>、 <info>CAL_JEWISH_ADD_ALAFIM</info>、
                     <info>CAL_JEWISH_ADD_GERESHAYIM</info> 组成的位掩码。

<comment>Return:</comment>
  <info>string</info>  根据 <strong>$hebrew</strong> 参数返回格式为“月/日/年”的犹太日期或者 ISO-8859-8 编码的希伯来日期字符串。

<comment>See Also:</comment>
   * <strong>jewishtojd()</strong>
   * <strong>cal_from_jd()</strong>


id: jdtojulian
type: function
doc:
<comment>Description:</comment>
  将儒略日数转换为儒略历日期
  
  将儒略日数转换成格式为“月/日/年”，string 类型的儒略历日期。

<comment>Param:</comment>
  <info>int</info>  <strong>$julian_day</strong>  int 类型的儒略日数

<comment>Return:</comment>
  <info>string</info>  “月/日/年”格式，string 类型的儒略日期

<comment>See Also:</comment>
   * <strong>juliantojd()</strong>
   * <strong>cal_from_jd()</strong>


id: jdtounix
type: function
doc:
<comment>Description:</comment>
  将儒略日数转换为 Unix 时间戳
  
  这个函数将返回与 <strong>$julian_day</strong> 给出的儒略日相对应的 Unix 时间戳。返回的时间是 UTC。

<comment>Param:</comment>
  <info>int</info>  <strong>$julian_day</strong>  儒略日数在 64 位系统上是 <return>2440588</return> 到 <return>106751993607888</return> 之间的数字，在 32 位系统上是
                    <return>2440588</return> 到 <return>2465443</return> 之间的数字。

<comment>Return:</comment>
  <info>int</info>  指定儒略日的开始时（午夜，而非中午）的 unix 时间戳。

<comment>See Also:</comment>
   * <strong>unixtojd()</strong>


id: jewishtojd
type: function
doc:
<comment>Description:</comment>
  将犹太历日期转换为儒略日数
  
  尽管这个函数可以处理元年（公元前 3761 年）以前的年份，但这样做可能没有意义。 犹太历被用了几千年，
  但早期的时候一个月的开始没有固定的准则，通常是观察到一个新月后定为一个月份的开始。

<comment>Param:</comment>
  <info>int</info>  <strong>$month</strong>  月份为 <return>1</return> 到 <return>13</return> 之间的数字， <return>1</return> 代表 <return>Tishri</return>， <return>13</return> 代表 <return>Elul</return>， <return>6</return>  和  <return>7</return> 代表平年中的
               <return>Adar</return>，但在闰年则分别代表 <return>Adar I</return> 和 <return>Adar II</return>。
  <info>int</info>  <strong>$day</strong>    天数为 <return>1</return> 到 <return>30</return>  之间的数字。如果这个月只有 29 天，则假设第 30 天为下个月的第一天。
  <info>int</info>  <strong>$year</strong>   年份为 1 到 9999 之间的数字

<comment>Return:</comment>
  <info>int</info>  指定犹太历日期所对应的 int 类型的儒略日。

<comment>See Also:</comment>
   * <strong>jdtojewish()</strong>
   * <strong>cal_to_jd()</strong>


id: jpeg2wbmp
type: function
doc:
<comment>Description:</comment>
  将 JPEG 图像文件转换为 WBMP 图像文件
  
  将 JPEG 图像文件转换为 WBMP 图像文件。

<comment>Param:</comment>
  <info>string</info>  <strong>$jpegname</strong>     JPEG 文件的路径。
  <info>string</info>  <strong>$wbmpname</strong>     目标 WBMP 文件的路径。
  <info>int</info>     <strong>$dest_height</strong>  目标图像高度。
  <info>int</info>     <strong>$dest_width</strong>   目标图像宽度。
  <info>int</info>     <strong>$threshold</strong>    阈值，在 0 和 8 之间（含）。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。
        
        如果 libgd 输出图像失败，函数会返回 <info>true</info>。

<comment>See Also:</comment>
   * <strong>png2wbmp()</strong>


id: json_decode
type: function
doc:
<comment>Description:</comment>
  对 JSON 格式的字符串进行解码
  
  接受一个 JSON 编码的字符串并且把它转换为 PHP 值。

<comment>Param:</comment>
  <info>string</info>     <strong>$json</strong>         待解码的 <strong>$json</strong> <info>string</info> 格式的字符串。
                           
                           这个函数仅能处理 UTF-8 编码的数据。
                           
                           PHP 实现了 JSON 的一个超集，参考 RFC 7159.
  <info>bool|null</info>  <strong>$associative</strong>  当为 <info>true</info> 时，JSON 对象将返回关联 <info>array</info>；当为 <info>false</info> 时，JSON 对象将返回
                           <info>object</info>。当为 <info>null</info> 时，JSON 对象将返回关联 <info>array</info> 或 <info>object</info>，这取决于是否在
                           <strong>$flags</strong> 中设置 <info>JSON_OBJECT_AS_ARRAY</info>。
  <info>int</info>        <strong>$depth</strong>        需要解码的结构，其最大嵌套深度。该值必须大于 <return>0</return> 或者小于等于 <return>2147483647</return>。
  <info>int</info>        <strong>$flags</strong>        由 <info>JSON_BIGINT_AS_STRING</info>、<info>JSON_INVALID_UTF8_IGNORE</info>、
                           <info>JSON_INVALID_UTF8_SUBSTITUTE</info>、<info>JSON_OBJECT_AS_ARRAY</info>、<info>JSON_THROW_ON_ERROR</info>
                           组成的掩码。这些常量的行为在 JSON constants 页面有进一步描述。

<comment>Return:</comment>
  <info>mixed</info>  返回在 <strong>$json</strong> 中编码的数据作为合适的 PHP 类型。没有引号的值 <return>true</return>、<return>false</return> 和 <return>null</return> 会相应地返回
         <info>true</info>、<info>false</info> 和 <info>null</info>。如果 <strong>$json</strong>  无法被解码，或者编码数据深度超过了嵌套限制的话，将会返回
         <info>null</info>。

<comment>See Also:</comment>
   * <strong>json_encode()</strong>
   * <strong>json_last_error()</strong>


id: json_encode
type: function
doc:
<comment>Description:</comment>
  对变量进行 JSON 编码
  
  返回字符串，包含了 <strong>$value</strong> 值 JSON 形式的表示。如果参数是 <info>array</info> 或 <info>object</info>，则会递归序列化。
  
  如果要序列化的值是对象，则默认仅包含公开可见的属性，或者类可以实现 JsonSerializable 控制其值如何序
  列化为 JSON。
  
  编码受传入的 <strong>$flags</strong> 参数影响，此外浮点值的编码依赖于 serialize_precision。

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  待编码的 <strong>$value</strong> ，除了 resource 类型之外，可以为任何数据类型。
                 
                 所有字符串数据的编码必须是 UTF-8。
                 
                 PHP 实现了 JSON 的一个超集，参考 RFC 7159.
  <info>int</info>    <strong>$flags</strong>  由以下常量组成的二进制掩码： <info>JSON_FORCE_OBJECT</info>、 <info>JSON_HEX_QUOT</info>、 <info>JSON_HEX_TAG</info>、
                 <info>JSON_HEX_AMP</info>、 <info>JSON_HEX_APOS</info>、 <info>JSON_INVALID_UTF8_IGNORE</info>、
                 <info>JSON_INVALID_UTF8_SUBSTITUTE</info>、 <info>JSON_NUMERIC_CHECK</info>、 <info>JSON_PARTIAL_OUTPUT_ON_ERROR</info>、
                 <info>JSON_PRESERVE_ZERO_FRACTION</info>、 <info>JSON_PRETTY_PRINT</info>、 <info>JSON_UNESCAPED_LINE_TERMINATORS</info>、
                 <info>JSON_UNESCAPED_SLASHES</info>、 <info>JSON_UNESCAPED_UNICODE</info>、 <info>JSON_THROW_ON_ERROR</info>。 关于 JSON
                 常量详情参考 JSON 常量页面。
  <info>int</info>    <strong>$depth</strong>  设置最大深度。 必须大于0。

<comment>Return:</comment>
  <info>string|false</info>  成功则返回 JSON 编码的 <info>string</info>  或者在失败时返回 <info>false</info> 。

<comment>See Also:</comment>
   * JsonSerializable
   * <strong>json_decode()</strong>
   * <strong>json_last_error()</strong>
   * <strong>serialize()</strong>


id: json_last_error
type: function
doc:
<comment>Description:</comment>
  返回最后发生的错误
  
  没有指定 <info>JSON_THROW_ON_ERROR</info>时，返回上一次 JSON 编码解码时发生的最后一个错误（如果有）。

<comment>Return:</comment>
  <info>int</info>  返回一个整型（integer），这个值会是以下的常量之一：

<comment>See Also:</comment>
   * <strong>json_last_error_msg()</strong>
   * <strong>json_decode()</strong>
   * <strong>json_encode()</strong>


id: json_last_error_msg
type: function
doc:
<comment>Description:</comment>
  返回最后一次调用 json_encode() 或 json_decode() 时产生的错误信息
  
  当没有设置 <info>JSON_THROW_ON_ERROR</info> 参数时，返回最后一次调用 <strong>json_encode()</strong> 或 <strong>json_decode()</strong> 产生的错误
  信息。

<comment>Return:</comment>
  <info>string</info>  成功则返回错误信息，如果没有错误产生则返回 <return>"No error"</return> 。

<comment>See Also:</comment>
   * <strong>json_last_error()</strong>


id: json_validate
type: function
doc:
<comment>Description:</comment>
  检查一个字符串是否包含有效的JSON
  
  返回给定的 <info>string</info> 是否是语法上有效的 JSON。 如果 <strong>json_validate()</strong> 返回 <info>true</info>，<strong>json_decode()</strong> 在使用相
  同的 <strong>$depth</strong> 和 <strong>$flags</strong> 时，将成功解码给定的字符串。
  
  如果 <strong>json_validate()</strong> 返回 <info>false</info>，原因可以使用 <strong>json_last_error()</strong> 和 <strong>json_last_error_msg()</strong> 获取。
  
  如果解码后的 JSON 内容未被使用，<strong>json_validate()</strong> 相比于 <strong>json_decode()</strong> 使用了较少的内存，因为它不需
  要构建包含有效载荷的数组或对象结构。
  
  在 <strong>json_decode()</strong> 之前调用 <strong>json_validate()</strong> 将不必要地解析字符串两次， 因为 <strong>json_decode()</strong> 在解码过程
  中隐式地执行验证。
  
  <strong>json_validate()</strong> 只有在解码后的 JSON 内容不会立即使用，但需要知道字符串是否包含有效的 JSON 时才有
  用。

<comment>Param:</comment>
  <info>string</info>  <strong>$json</strong>   需要验证的字符串。
                  
                  该函数仅适用于 UTF-8 编码字符串。
                  
                  PHP 实现了 JSON 的一个超集，参考 RFC 7159.
  <info>int</info>     <strong>$depth</strong>  解码结构的最大嵌套深度。 该值必须大于 <return>0</return>、 且小于或等于 <return>2147483647</return>。
  <info>int</info>     <strong>$flags</strong>  当前只接受 <info>JSON_INVALID_UTF8_IGNORE</info>。

<comment>Return:</comment>
  <info>bool</info>  如果给定字符串是语法有效的 JSON，则返回 <info>true</info>，否则返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>json_decode()</strong>
   * <strong>json_last_error()</strong>
   * <strong>json_last_error_msg()</strong>


id: juliantojd
type: function
doc:
<comment>Description:</comment>
  儒略日期转为儒略日数
  
  儒略历的有效年份为公元前 4713 年到公元 9999 年。
  
  尽管这个函数也可以处理追溯到公元前 4713 年以前的日期，但这样做可能没有意义。此历法是在公元前 46
  年创建，但是到了公元 8 年细节才稳定，也有可能是 4  晚期。此外，每年的开始也因为文化的不同，不是所
  有人都接受 January 为第一个月份。
  
  记住，当今世界最广泛使用的历法系统是公历，函数  <strong>gregoriantojd()</strong> 可用于转换此类日期为儒略日数。

<comment>Param:</comment>
  <info>int</info>  <strong>$month</strong>  月的范围是 1 (January) 到 12 ( December) 之间的数字。
  <info>int</info>  <strong>$day</strong>    天的范围是 1 到 31 之间的数字
  <info>int</info>  <strong>$year</strong>   年的范围是 -4713 到 9999 之间的数字

<comment>Return:</comment>
  <info>int</info>  指定儒略日期所对应的 int 类型的儒略日。

<comment>See Also:</comment>
   * <strong>jdtojulian()</strong>
   * <strong>cal_to_jd()</strong>


id: key
type: function
doc:
<comment>Description:</comment>
  从关联数组中取得键名
  
  <strong>key()</strong> 返回数组中当前单元的键名。

<comment>Param:</comment>
  <info>array|object</info>  <strong>$array</strong>  该数组。

<comment>Return:</comment>
  <info>int|string|null</info>  <strong>key()</strong> 函数返回数组中内部指针指向的当前单元的键名。 但它不会移动指针。如果内部指针
                   超过了元素列表尾部，或者数组是空的，<strong>key()</strong> 会返回 <info>null</info>。

<comment>See Also:</comment>
   * <strong>current()</strong>
   * <strong>next()</strong>
   * <strong>array_key_first()</strong>
   * foreach


id: key_exists
type: function
doc:
<comment>Description:</comment>
  别名 array_key_exists
  
  此函数是该函数的别名： <strong>array_key_exists()</strong>.


id: krsort
type: function
doc:
<comment>Description:</comment>
  对数组按照键名逆向排序
  
  对 <strong>$array</strong> 本身按照键（key）降序排序。
  
  如果两个成员完全相同，那么它们将保持原来的顺序。 在 PHP 8.0.0 之前，它们在排序数组中的相对顺序是未
  定义的。
  
  重置数组中的内部指针，指向第一个元素。

<comment>Param:</comment>
  <info>array</info>  <strong>$array</strong>  输入的数组。
  <info>int</info>    <strong>$flags</strong>  可选的第二个参数 <strong>$flags</strong> 可以用以下值改变排序的行为：
                 
                 排序类型标记： <info>SORT_REGULAR</info>  - 正常比较单元 详细描述参见 比较运算符 章节
                 <info>SORT_NUMERIC</info> - 单元被作为数字来比较<info>SORT_STRING</info> - 单元被作为字符串来比较
                 <info>SORT_LOCALE_STRING</info> - 根据当前的区域（locale）设置来把单元当作字符串比较，可以用
                 <strong>setlocale()</strong> 来改变。 <info>SORT_NATURAL</info> - 和 <strong>natsort()</strong> 类似对每个单元以“自然的顺序”对字符
                 串进行排序。 <info>SORT_FLAG_CASE</info> - 能够与 <info>SORT_STRING</info> 或 <info>SORT_NATURAL</info> 合并（OR 位运
                 算），不区分大小写排序字符串。
                 
                 <info>SORT_REGULAR</info>  - 正常比较单元 详细描述参见 比较运算符 章节
                 
                 <info>SORT_NUMERIC</info> - 单元被作为数字来比较
                 
                 <info>SORT_STRING</info> - 单元被作为字符串来比较
                 
                 <info>SORT_LOCALE_STRING</info> - 根据当前的区域（locale）设置来把单元当作字符串比较，可以用
                 <strong>setlocale()</strong> 来改变。
                 
                 <info>SORT_NATURAL</info> - 和 <strong>natsort()</strong> 类似对每个单元以“自然的顺序”对字符串进行排序。
                 
                 <info>SORT_FLAG_CASE</info> - 能够与 <info>SORT_STRING</info> 或 <info>SORT_NATURAL</info> 合并（OR 位运算），不区分大小写
                 排序字符串。

<comment>Return:</comment>
  <info>true</info>  总是返回 <info>true</info>。

<comment>See Also:</comment>
   * <strong>sort()</strong>
   * <strong>ksort()</strong>
   * 数组排序函数对比


id: ksort
type: function
doc:
<comment>Description:</comment>
  对数组根据键名升序排序
  
  对 <strong>$array</strong> 本身进行按键（key）升序排序。
  
  如果两个成员完全相同，那么它们将保持原来的顺序。 在 PHP 8.0.0 之前，它们在排序数组中的相对顺序是未
  定义的。
  
  重置数组中的内部指针，指向第一个元素。

<comment>Param:</comment>
  <info>array</info>  <strong>$array</strong>  输入的数组。
  <info>int</info>    <strong>$flags</strong>  可选的第二个参数 <strong>$flags</strong> 可以用以下值改变排序的行为：
                 
                 排序类型标记： <info>SORT_REGULAR</info>  - 正常比较单元 详细描述参见 比较运算符 章节
                 <info>SORT_NUMERIC</info> - 单元被作为数字来比较<info>SORT_STRING</info> - 单元被作为字符串来比较
                 <info>SORT_LOCALE_STRING</info> - 根据当前的区域（locale）设置来把单元当作字符串比较，可以用
                 <strong>setlocale()</strong> 来改变。 <info>SORT_NATURAL</info> - 和 <strong>natsort()</strong> 类似对每个单元以“自然的顺序”对字符
                 串进行排序。 <info>SORT_FLAG_CASE</info> - 能够与 <info>SORT_STRING</info> 或 <info>SORT_NATURAL</info> 合并（OR 位运
                 算），不区分大小写排序字符串。
                 
                 <info>SORT_REGULAR</info>  - 正常比较单元 详细描述参见 比较运算符 章节
                 
                 <info>SORT_NUMERIC</info> - 单元被作为数字来比较
                 
                 <info>SORT_STRING</info> - 单元被作为字符串来比较
                 
                 <info>SORT_LOCALE_STRING</info> - 根据当前的区域（locale）设置来把单元当作字符串比较，可以用
                 <strong>setlocale()</strong> 来改变。
                 
                 <info>SORT_NATURAL</info> - 和 <strong>natsort()</strong> 类似对每个单元以“自然的顺序”对字符串进行排序。
                 
                 <info>SORT_FLAG_CASE</info> - 能够与 <info>SORT_STRING</info> 或 <info>SORT_NATURAL</info> 合并（OR 位运算），不区分大小写
                 排序字符串。

<comment>Return:</comment>
  <info>true</info>  总是返回 <info>true</info>。

<comment>See Also:</comment>
   * <strong>sort()</strong>
   * <strong>krsort()</strong>
   * 数组排序函数对比


id: lcfirst
type: function
doc:
<comment>Description:</comment>
  使字符串的第一个字符小写
  
  如果第一个字符是 <return>"A"</return>（0x41）到 <return>"Z"</return>（0x5a）范围内的 ASCII 字符，则返回第一个字母是小写的 <strong>$string</strong>。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>  输入的字符串。

<comment>Return:</comment>
  <info>string</info>  返回转换后的字符串。

<comment>See Also:</comment>
   * <strong>ucfirst()</strong>
   * <strong>strtolower()</strong>
   * <strong>strtoupper()</strong>
   * <strong>ucwords()</strong>


id: lcg_value
type: function
doc:
<comment>Description:</comment>
  组合线性同余发生器
  
  <strong>lcg_value()</strong> 返回范围为 (0, 1) 的一个伪随机数。本函数组合了周期为 2^31 - 85 和 2^31 - 249 的两个同
  余发生器。本函数的周期等于这两个素数的乘积。
  
  本函数并不会生成安全加密的值，并且不可用于加密或者要求返回值不可猜测的目的。
  
  如果需要加密安全随机，则可以将 <class>Random\Engine\Secure</class> 引擎用于 <class>Random\Randomizer</class>。对于简单的用例，
  <strong>random_int()</strong> 和 <strong>random_bytes()</strong> 函数提供了操作系统的 CSPRNG 支持的方便且安全的 API。
  
  Scaling the return value to a different interval using multiplication or addition (a so-called
  affine transformation) might result in a bias in the resulting value as floats are not equally
  dense across the number line. As not all values can be exactly represented by a float, the result
  of the affine transformation might also result in values outside of the requested interval.
  
  使用 Random\Randomizer::getFloat 在任意间隔内生成随机浮点数。使用 Random\Randomizer::getInt 在任意
  间隔内生成随机整数。

<comment>Return:</comment>
  <info>float</info>  介于 0.0 和 1.0（含）之间的伪随机浮点值。

<comment>See Also:</comment>
   * Random\Randomizer::getFloat
   * Random\Randomizer::getInt
   * <strong>random_int()</strong>


id: lchgrp
type: function
doc:
<comment>Description:</comment>
  修改符号链接的所有组
  
  尝试修改符号链接 <strong>$filename</strong> 的所有组 <strong>$group</strong>
  
  只有超级用户可以任意修改符号链接的所有组;其他用户可能需要有修改目标组的权限才能修改至目标所有组。

<comment>Param:</comment>
  <info>string</info>      <strong>$filename</strong>  符号链接路径
  <info>string|int</info>  <strong>$group</strong>     所有组的名字或者编号

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>chgrp()</strong>
   * <strong>lchown()</strong>
   * <strong>chown()</strong>
   * <strong>chmod()</strong>


id: lchown
type: function
doc:
<comment>Description:</comment>
  修改符号链接的所有者
  
  尝试修改符号链接 <strong>$filename</strong> 的 所有者 <strong>$user</strong>
  
  只有超级用户任意修改符号链接的所有者。

<comment>Param:</comment>
  <info>string</info>      <strong>$filename</strong>  文件路径。
  <info>string|int</info>  <strong>$user</strong>      所有者名称或编号

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>chown()</strong>
   * <strong>lchgrp()</strong>
   * <strong>chgrp()</strong>
   * <strong>chmod()</strong>


id: ldap_8859_to_t61
type: function
doc:
<comment>Description:</comment>
  Translate 8859 characters to t61 characters
  
  Translate <return>ISO-8859</return> characters to <return>t61</return> characters.
  
  This function is useful if you have to talk to a legacy  <return>LDAPv2</return> server.

<comment>Param:</comment>
  <info>string</info>  <strong>$value</strong>  The text to be translated.

<comment>Return:</comment>
  <info>string|false</info>  Return the <return>t61</return> translation of <strong>$value</strong>,  或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>ldap_t61_to_8859()</strong>


id: ldap_add
type: function
doc:
<comment>Description:</comment>
  Add entries to LDAP directory
  
  Add entries in the LDAP directory.

<comment>Param:</comment>
  <info>LDAP\Connection</info>  <strong>$ldap</strong>      通过 <strong>ldap_connect()</strong> 返回的 <class>LDAP\Connection</class> 实例。
  <info>string</info>           <strong>$dn</strong>        The distinguished name of an LDAP entity.
  <info>array</info>            <strong>$entry</strong>     An array that specifies the information about the entry. The values in
                              the entries are indexed by individual attributes. In case of multiple
                              values for an attribute, they are indexed using integers starting with
                              0.  ]]>
  <info>array|null</info>       <strong>$controls</strong>  Array of LDAP Controls to send with the request.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>ldap_add_ext()</strong>
   * <strong>ldap_delete()</strong>


id: ldap_add_ext
type: function
doc:
<comment>Description:</comment>
  Add entries to LDAP directory
  
  Does the same thing as <strong>ldap_add()</strong> but returns an <class>LDAP\Result</class> instance to be parsed with
  <strong>ldap_parse_result()</strong>.

<comment>Return:</comment>
  <info>LDAP\Result|false</info>  Returns an <class>LDAP\Result</class> instance, 或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>ldap_add()</strong>
   * <strong>ldap_parse_result()</strong>


id: ldap_bind
type: function
doc:
<comment>Description:</comment>
  绑定 LDAP 目录
  
  使用指定的 RDN 和密码绑定到 LDAP 目录。

<comment>Param:</comment>
  <info>LDAP\Connection</info>  <strong>$ldap</strong>      通过 <strong>ldap_connect()</strong> 返回的 <class>LDAP\Connection</class> 实例。
  <info>string|null</info>      <strong>$dn</strong>        
  <info>string|null</info>      <strong>$password</strong>  

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>ldap_bind_ext()</strong>
   * <strong>ldap_unbind()</strong>


id: ldap_bind_ext
type: function
doc:
<comment>Description:</comment>
  Bind to LDAP directory
  
  Does the same thing as <strong>ldap_bind()</strong> but returns an <class>LDAP\Result</class> instance to be parsed with
  <strong>ldap_parse_result()</strong>.

<comment>Return:</comment>
  <info>LDAP\Result|false</info>  Returns an <class>LDAP\Result</class> instance, 或者在失败时返回 <info>false</info>.

<comment>See Also:</comment>
   * <strong>ldap_bind()</strong>
   * <strong>ldap_parse_result()</strong>


id: ldap_compare
type: function
doc:
<comment>Description:</comment>
  Compare value of attribute found in entry specified with DN
  
  Compare <strong>$value</strong> of <strong>$attribute</strong> with value of same attribute in an LDAP directory entry.

<comment>Param:</comment>
  <info>LDAP\Connection</info>  <strong>$ldap</strong>       通过 <strong>ldap_connect()</strong> 返回的 <class>LDAP\Connection</class> 实例。
  <info>string</info>           <strong>$dn</strong>         The distinguished name of an LDAP entity.
  <info>string</info>           <strong>$attribute</strong>  The attribute name.
  <info>string</info>           <strong>$value</strong>      The compared value.
  <info>array|null</info>       <strong>$controls</strong>   Array of LDAP Controls to send with the request.

<comment>Return:</comment>
  <info>bool|int</info>  Returns <info>true</info> if <strong>$value</strong> matches otherwise returns <info>false</info>. Returns -1 on error.


id: ldap_connect
type: function
doc:
<comment>Description:</comment>
  Connect to an LDAP server
  
  As of PHP 8.3.0, the following signature is deprecated.
  
  Creates an <class>LDAP\Connection</class> connection and checks whether the given <strong>$uri</strong> is plausible.
  
  This function does not open a connection. It checks whether the given parameters are plausible and
  can be used to open a connection as soon as one is needed.

<comment>Param:</comment>
  <info>string|null</info>  <strong>$uri</strong>   A full LDAP URI of the form <return>ldap://hostname:port</return> or <return>ldaps://hostname:port</return> for
                      SSL encryption.
                      
                      You can also provide multiple LDAP-URIs separated by a space as one string
                      
                      Note that <return>hostname:port</return> is not a supported LDAP URI as the schema is missing.
  <info>string|null</info>  <strong>$host</strong>  The hostname to connect to.
  <info>int</info>          <strong>$port</strong>  The port to connect to.

<comment>Return:</comment>
  <info>LDAP\Connection|false</info>  Returns an <class>LDAP\Connection</class> instance when the provided LDAP URI seems
                         plausible. It's a syntactic check of the provided parameter but the
                         server(s) will not be contacted! If the syntactic check fails it returns
                         <info>false</info>. <strong>ldap_connect()</strong> will otherwise return a <class>LDAP\Connection</class> instance as
                         it does not actually connect but just initializes the connecting
                         parameters.  The actual connect happens with the next calls to ldap_*
                         functions, usually with <strong>ldap_bind()</strong>.
                         
                         If no argument is specified then the <class>LDAP\Connection</class> instance of the
                         already opened connection will be returned.

<comment>See Also:</comment>
   * <strong>ldap_bind()</strong>


id: ldap_connect_wallet
type: function
doc:
<comment>Description:</comment>
  Connect to an LDAP server
  
  本函数还未编写文档，仅有参数列表。

<comment>Param:</comment>
  <info>string|null</info>  <strong>$uri</strong>        
  <info>string</info>       <strong>$wallet</strong>     
  <info>string</info>       <strong>$password</strong>   
  <info>int</info>          <strong>$auth_mode</strong>  

<comment>Return:</comment>
  <info>LDAP\Connection|false</info>  

<comment>See Also:</comment>
   * <strong>ldap_connect()</strong>


id: ldap_control_paged_result
type: function
doc:
<comment>Description:</comment>
  Send LDAP pagination control
  
  Enable LDAP pagination by sending the pagination control (page size, cookie...).

<comment>Param:</comment>
  <info>resource</info>  <strong>$link</strong>        An LDAP resource, returned by <strong>ldap_connect()</strong>.
  <info>int</info>       <strong>$pagesize</strong>    The number of entries by page.
  <info>bool</info>      <strong>$iscritical</strong>  Indicates whether the pagination is critical or not.  If true and if the
                         server doesn't support pagination, the search will return no result.
  <info>string</info>    <strong>$cookie</strong>      An opaque structure sent by the server
                         (<strong>ldap_control_paged_result_response()</strong>).

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>ldap_control_paged_result_response()</strong>
   * RFC2696 : LDAP Control Extension for Simple
    Paged Results Manipulation


id: ldap_control_paged_result_response
type: function
doc:
<comment>Description:</comment>
  Retrieve the LDAP pagination cookie
  
  Retrieve the pagination information send by the server.

<comment>Param:</comment>
  <info>resource</info>  <strong>$link</strong>       An LDAP resource, returned by <strong>ldap_connect()</strong>.
  <info>resource</info>  <strong>$result</strong>     
  <info>string</info>    <strong>$cookie</strong>     An opaque structure sent by the server.
  <info>int</info>       <strong>$estimated</strong>  The estimated number of entries to retrieve.

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>ldap_control_paged_result()</strong>
   * RFC2696 : LDAP Control Extension for Simple
    Paged Results Manipulation


id: ldap_count_entries
type: function
doc:
<comment>Description:</comment>
  Count the number of entries in a search
  
  Returns the number of entries stored in the result of previous search operations.

<comment>Param:</comment>
  <info>LDAP\Connection</info>  <strong>$ldap</strong>    通过 <strong>ldap_connect()</strong> 返回的 <class>LDAP\Connection</class> 实例。
  <info>LDAP\Result</info>      <strong>$result</strong>  通过 <strong>ldap_list()</strong> 或者 <strong>ldap_search()</strong> 返回的 <class>LDAP\Result</class> 实例。

<comment>Return:</comment>
  <info>int</info>  Returns number of entries in the result, 或者在失败时返回 <info>false</info>.


id: ldap_count_references
type: function
doc:
<comment>Description:</comment>
  Counts the number of references in a search result
  
  Counts the number of references in a search result.

<comment>Param:</comment>
  <info>LDAP\Connection</info>  <strong>$ldap</strong>    通过 <strong>ldap_connect()</strong> 返回的 <class>LDAP\Connection</class> 实例。
  <info>LDAP\Result</info>      <strong>$result</strong>  通过 <strong>ldap_list()</strong> 或者 <strong>ldap_search()</strong> 返回的 <class>LDAP\Result</class> 实例。

<comment>Return:</comment>
  <info>int</info>  Returns the number of references in a search result.

<comment>See Also:</comment>
   * <strong>ldap_connect()</strong>


