# php_manual

id: wkhtmltox\PDF\Converter::add
type: function
doc:
<comment>Description:</comment>
  Add an object for conversion
  
  Adds the given object to conversion

<comment>Param:</comment>
  <info>wkhtmltox\PDF\Object</info>  <strong>$object</strong>  The object to add

<comment>Return:</comment>
  <info>void</info>  


id: wkhtmltox\PDF\Converter::convert
type: function
doc:
<comment>Description:</comment>
  Perform PDF conversion
  
  Performs conversion of all previously added Objects

<comment>Return:</comment>
  <info>string|null</info>  Where the return value is used, it will be populated with the contents of the
               conversion buffer


id: wkhtmltox\PDF\Converter::getVersion
type: function
doc:
<comment>Description:</comment>
  Determine version of Converter
  
  Determines the version of Converter as reported by libwkhtmltox

<comment>Return:</comment>
  <info>string</info>  Returns a version string


id: wkhtmltox\PDF\Object::__construct
type: function
doc:
<comment>Description:</comment>
  Create a new PDF Object
  
  Creates a new PDF Object from the given buffer and optional configuration settings

<comment>Param:</comment>
  <info>string</info>  <strong>$buffer</strong>    HTML
  <info>array</info>   <strong>$settings</strong>  NameDescriptionValuesChangelogpageURL or path of the HTML to convert&gt;=
                     0.1.0useExternalLinksset true to convert external links in the input into
                     external PDF links in the outputboolean&gt;= 0.1.0useLocalLinksset true to
                     convert internal links in the input into internal PDF links in the
                     outputboolean&gt;= 0.1.0produceFormsset true to turn HTML forms into PDF
                     formsboolean&gt;= 0.1.0replacementsundocumented&gt;= 0.1.0includeInOutlineset
                     true to include sections from this object in the outline and tocboolean&gt;=
                     0.1.0pagesCountset true to make page count in toc inclusive of the number of
                     pages in this objectboolean&gt;= 0.1.0tocXslset to style sheet to convert this
                     object into a toc object&gt;= 0.1.0toc.useDottedLinesset true to use dotted
                     lines in tocboolean&gt;= 0.1.0toc.captionTextthe caption text for toc&gt;=
                     0.1.0toc.forwardLinksset true to create links from toc to contentboolean&gt;=
                     0.1.0toc.backLinksset true to create links from content to tocboolean&gt;=
                     0.1.0toc.indentationindentation for toc2em&gt;= 0.1.0toc.fontScalethe factor to
                     scale down the font at every toc level0.8&gt;= 0.1.0header.fontSizefont size
                     for use in header13&gt;= 0.1.0header.fontNamename of font for use in
                     headertimes&gt;= 0.1.0header.lefttext for left of header&gt;=
                     0.1.0header.centertext for center of header&gt;= 0.1.0header.righttext for
                     right of header&gt;= 0.1.0header.lineenable or disable horizontal rule under
                     headerboolean&gt;= 0.1.0header.spacingspace between header and content1.8&gt;=
                     0.1.0header.htmlUrlURL or path of HTML to use in header&gt;=
                     0.1.0footer.fontSizefont size for use in footer13&gt;= 0.1.0footer.fontNamename
                     of font for use in footertimes&gt;= 0.1.0footer.lefttext for left of
                     footer&gt;= 0.1.0footer.centertext for center of footer&gt;=
                     0.1.0footer.righttext for right of footer&gt;= 0.1.0footer.lineenable or
                     disable horizontal rule under footerboolean&gt;= 0.1.0footer.spacingspace
                     between footer and content1.8&gt;= 0.1.0footer.htmlUrlURL or path of HTML to
                     use in footer&gt;= 0.1.0load.usernameuser name to use when loging into a
                     websitebart&gt;= 0.1.0load.passwordthe password to used when logging into a
                     websiteelbarto&gt;= 0.1.0load.jsdelaythe amount of time in milliseconds to wait
                     after a page is loaded until it is captured1200&gt;= 0.1.0load.zoomFactorhow
                     much zoom should be applied to the content2.2&gt;=
                     0.1.0load.customHeaderscustom headers to send when requesting the main web
                     page&gt;= 0.1.0load.repertCustomHeadersset true to send with all
                     requestsboolean&gt;= 0.1.0load.cookiescookie string to send when requesting the
                     main web page&gt;= 0.1.0load.postpost string to send when requesting the main
                     web page&gt;= 0.1.0load.blockLocalFileAccessdisallow local and piped files to
                     access other local filesboolean&gt;= 0.1.0load.stopSlowScriptstop slow running
                     javascriptbooleanload.debugJavascriptallow javascript to raise
                     warningsboolean&gt;= 0.1.0load.loadErrorHandlingset error handling
                     strategyabortabort the convertion processskipdo not add the object to the final
                     outputignoretry to add the object to the final output&gt;= 0.1.0load.proxy&gt;=
                     0.1.0web.backgroundinclude background image in outputboolean&gt;=
                     0.1.0web.loadImagesinclude images in outputboolean&gt;=
                     0.1.0web.enableJavascriptenable or disable javascriptboolean&gt;=
                     0.1.0web.enableIntelligentShrinkingenable to attempt to fit more content on
                     page, only applies to PDF outputboolean&gt;= 0.1.0web.minimumFontSizethe
                     minimum font size allowed9&gt;= 0.1.0web.printMediaTypeprint content using
                     print media type instead of screen media typeboolean&gt;=
                     0.1.0web.defaultEncodingcontent to use where no encoding is specifiedutf-8&gt;=
                     0.1.0web.userStyleSheetURL or path to a user specified style
                     sheet/path/to/style.css&gt;= 0.1.0web.enablePluginsenable or disable NS
                     pluginsboolean&gt;= 0.1.0


id: wordwrap
type: function
doc:
<comment>Description:</comment>
  打断字符串为指定数量的字串
  
  使用字符串断点将字符串打断为指定数量的字串。

<comment>Param:</comment>
  <info>string</info>  <strong>$string</strong>          输入字符串。
  <info>int</info>     <strong>$width</strong>           列宽度。
  <info>string</info>  <strong>$break</strong>           使用可选的 <strong>$break</strong> 参数打断字符串。
  <info>bool</info>    <strong>$cut_long_words</strong>  如果 <strong>$cut_long_words</strong> 设置为 <info>true</info>，字符串总是在指定的 <strong>$width</strong> 或者之前位置
                           被打断。因此，如果有的单词宽度超过了给定的宽度，它将被分隔开来。（参见第
                           二个示例）。当它是 <info>false</info>，函数不会分割单词，哪怕 <strong>$width</strong> 小于单词宽度。

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

<comment>See Also:</comment>
   * <strong>nl2br()</strong>
   * <strong>chunk_split()</strong>


id: xattr_get
type: function
doc:
<comment>Description:</comment>
  Get an extended attribute
    
  
  This function gets the value of an extended attribute of a file.
  
  扩展的属性有两种 不同的命名空间：user
  和 root。user 命名空间对所有用户均有效，而 root
  命名空间仅对拥有 root 权限的用户有效。
  xattr 默认在 user 命名空间上操作，但可使用
  <strong>$flags</strong> 参数进行更改。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  The file from which we get the attribute.
  <info>string</info>  <strong>$name</strong>      The name of the attribute.
  <info>int</info>     <strong>$flags</strong>     Supported xattr flags<info>XATTR_DONTFOLLOW</info>Do not follow the symbolic link but
                     operate on symbolic link itself.<info>XATTR_ROOT</info>Set attribute in root (trusted)
                     namespace. Requires root privileges.

<comment>Return:</comment>
  <info>string</info>  Returns a string containing the value or <info>false</info> if the attribute doesn't  exist.

<comment>See Also:</comment>
   * <strong>xattr_list()</strong>
   * <strong>xattr_set()</strong>
   * <strong>xattr_remove()</strong>


id: xattr_list
type: function
doc:
<comment>Description:</comment>
  Get a list of extended attributes
    
  
  This functions gets a list of names of extended attributes of a file.
  
  扩展的属性有两种 不同的命名空间：user
  和 root。user 命名空间对所有用户均有效，而 root
  命名空间仅对拥有 root 权限的用户有效。
  xattr 默认在 user 命名空间上操作，但可使用
  <strong>$flags</strong> 参数进行更改。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  The path of the file.
  <info>int</info>     <strong>$flags</strong>     Supported xattr flags<info>XATTR_DONTFOLLOW</info>Do not follow the symbolic link but
                     operate on symbolic link itself.<info>XATTR_ROOT</info>Set attribute in root (trusted)
                     namespace. Requires root privileges.

<comment>Return:</comment>
  <info>array</info>  This function returns an array with names of extended attributes.

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


id: xattr_remove
type: function
doc:
<comment>Description:</comment>
  Remove an extended attribute
    
  
  This function removes an extended attribute of a file.
  
  扩展的属性有两种 不同的命名空间：user
  和 root。user 命名空间对所有用户均有效，而 root
  命名空间仅对拥有 root 权限的用户有效。
  xattr 默认在 user 命名空间上操作，但可使用
  <strong>$flags</strong> 参数进行更改。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  The file from which we remove the attribute.
  <info>string</info>  <strong>$name</strong>      The name of the attribute to remove.
  <info>int</info>     <strong>$flags</strong>     Supported xattr flags<info>XATTR_DONTFOLLOW</info>Do not follow the symbolic link but
                     operate on symbolic link itself.<info>XATTR_ROOT</info>Set attribute in root (trusted)
                     namespace. Requires root privileges.

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

<comment>See Also:</comment>
   * <strong>xattr_list()</strong>
   * <strong>xattr_set()</strong>
   * <strong>xattr_get()</strong>


id: xattr_set
type: function
doc:
<comment>Description:</comment>
  Set an extended attribute
    
  
  This function sets the value of an extended attribute of a file.
  
  扩展的属性有两种 不同的命名空间：user
  和 root。user 命名空间对所有用户均有效，而 root
  命名空间仅对拥有 root 权限的用户有效。
  xattr 默认在 user 命名空间上操作，但可使用
  <strong>$flags</strong> 参数进行更改。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  The file in which we set the attribute.
  <info>string</info>  <strong>$name</strong>      The name of the extended attribute. This attribute will be created if  it
                     doesn't exist or replaced otherwise. You can change this behaviour  by using
                     the <strong>$flags</strong> parameter.
  <info>string</info>  <strong>$value</strong>     The value of the attribute.
  <info>int</info>     <strong>$flags</strong>     Supported xattr flags<info>XATTR_CREATE</info>Function will fail if extended attribute
                     already exists.<info>XATTR_REPLACE</info>Function will fail if extended attribute doesn't
                     exist.<info>XATTR_DONTFOLLOW</info>Do not follow the symbolic link but operate on symbolic
                     link itself.<info>XATTR_ROOT</info>Set attribute in root (trusted) namespace. Requires root
                     privileges.

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

<comment>See Also:</comment>
   * <strong>xattr_get()</strong>
   * <strong>xattr_remove()</strong>


id: xattr_supported
type: function
doc:
<comment>Description:</comment>
  Check if filesystem supports extended attributes
    
  
  This functions checks if the filesystem holding the given file supports  extended attributes. Read
  access to the file is required.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  The path of the tested file.
  <info>int</info>     <strong>$flags</strong>     Supported xattr flags<info>XATTR_DONTFOLLOW</info>Do not follow the symbolic link but
                     operate on symbolic link itself.

<comment>Return:</comment>
  <info>bool</info>  This function returns <info>true</info> if filesystem supports extended attributes, <info>false</info> if it doesn't
        and <info>null</info> if it can't be determined (for example wrong path or lack of permissions to file).

<comment>See Also:</comment>
   * <strong>xattr_get()</strong>
   * <strong>xattr_list()</strong>


id: xdiff_file_bdiff
type: function
doc:
<comment>Description:</comment>
  Make binary diff of two files
  
  Makes a binary diff of two files and stores the result in a patch file. This function works with
  both text and binary files. Resulting patch file can be later applied using
  <strong>xdiff_file_bpatch()</strong>/<strong>xdiff_string_bpatch()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$old_file</strong>  Path to the first file. This file acts as "old" file.
  <info>string</info>  <strong>$new_file</strong>  Path to the second file. This file acts as "new" file.
  <info>string</info>  <strong>$dest</strong>      Path of the resulting patch file. Resulting file contains differences between
                     "old" and "new" files. It is in binary format and is human-unreadable.

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

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


id: xdiff_file_bdiff_size
type: function
doc:
<comment>Description:</comment>
  Read a size of file created by applying a binary diff
  
  Returns a size of a result file that would be created after applying binary patch from file <strong>$file</strong>
  to the original file.

<comment>Param:</comment>
  <info>string</info>  <strong>$file</strong>  The path to the binary patch created by <strong>xdiff_string_bdiff()</strong> or
                 <strong>xdiff_string_rabdiff()</strong> function.

<comment>Return:</comment>
  <info>int</info>  Returns the size of file that would be created.

<comment>See Also:</comment>
   * <strong>xdiff_file_bdiff()</strong>
   * <strong>xdiff_file_rabdiff()</strong>
   * <strong>xdiff_file_bpatch()</strong>


id: xdiff_file_bpatch
type: function
doc:
<comment>Description:</comment>
  Patch a file with a binary diff
  
  Patches a <strong>$file</strong> with a binary <strong>$patch</strong> and stores the result in a file <strong>$dest</strong>.  This function accepts
  patches created both via <strong>xdiff_file_bdiff()</strong>  and <strong>xdiff_file_rabdiff()</strong> functions or their string
  counterparts.

<comment>Param:</comment>
  <info>string</info>  <strong>$file</strong>   The original file.
  <info>string</info>  <strong>$patch</strong>  The binary patch file.
  <info>string</info>  <strong>$dest</strong>   Path of the resulting file.

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

<comment>See Also:</comment>
   * <strong>xdiff_file_bdiff()</strong>
   * <strong>xdiff_file_rabdiff()</strong>


id: xdiff_file_diff
type: function
doc:
<comment>Description:</comment>
  Make unified diff of two files
  
  Makes an unified diff containing differences between <strong>$old_file</strong> and <strong>$new_file</strong> and stores it in
  <strong>$dest</strong> file. The resulting file is human-readable. An optional <strong>$context</strong> parameter specifies how
  many lines of context should be added around each change. Setting <strong>$minimal</strong> parameter to true will
  result in outputting the shortest patch file possible (can take a long time).

<comment>Param:</comment>
  <info>string</info>  <strong>$old_file</strong>  Path to the first file. This file acts as "old" file.
  <info>string</info>  <strong>$new_file</strong>  Path to the second file. This file acts as "new" file.
  <info>string</info>  <strong>$dest</strong>      Path of the resulting patch file.
  <info>int</info>     <strong>$context</strong>   Indicates how many lines of context you want to include in diff result.
  <info>bool</info>    <strong>$minimal</strong>   Set this parameter to <info>true</info> if you want to minimalize size of the result (can
                     take a long time).

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

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


id: xdiff_file_diff_binary
type: function
doc:
<comment>Description:</comment>
  别名 xdiff_file_bdiff
  
  Makes a binary diff of two files and stores the result in a patch file. This function works with
  both text and binary files. Resulting patch file can be later applied using <strong>xdiff_file_bpatch()</strong>.
  
  Starting with version 1.5.0 this function is an alias of <strong>xdiff_file_bdiff()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$old_file</strong>  Path to the first file. This file acts as "old" file.
  <info>string</info>  <strong>$new_file</strong>  Path to the second file. This file acts as "new" file.
  <info>string</info>  <strong>$dest</strong>      Path of the resulting patch file. Resulting file contains differences between
                     "old" and "new" files. It is in binary format and is human-unreadable.

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

<comment>See Also:</comment>
   * <strong>xdiff_file_bdiff()</strong>
   * <strong>xdiff_file_bpatch()</strong>


id: xdiff_file_merge3
type: function
doc:
<comment>Description:</comment>
  Merge 3 files into one
  
  Merges three files into one and stores the result in a file <strong>$dest</strong>.  The <strong>$old_file</strong> is an original
  version while <strong>$new_file1</strong> and <strong>$new_file2</strong> are modified versions of an original.

<comment>Param:</comment>
  <info>string</info>  <strong>$old_file</strong>   Path to the first file. It acts as "old" file.
  <info>string</info>  <strong>$new_file1</strong>  Path to the second file. It acts as modified version of <strong>$old_file</strong>.
  <info>string</info>  <strong>$new_file2</strong>  Path to the third file. It acts as modified version of <strong>$old_file</strong>.
  <info>string</info>  <strong>$dest</strong>       Path of the resulting file, containing merged changed from both <strong>$new_file1</strong> and
                      <strong>$new_file2</strong>.

<comment>Return:</comment>
  <info>mixed</info>  Returns <info>true</info> if merge was successful, string with rejected chunks if it was not or <info>false</info> if
         an internal error happened.

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


id: xdiff_file_patch
type: function
doc:
<comment>Description:</comment>
  Patch a file with an unified diff
  
  Patches a <strong>$file</strong> with a <strong>$patch</strong> and stores the result in a file. <strong>$patch</strong> has to be an unified diff
  created by  <strong>xdiff_file_diff()</strong>/<strong>xdiff_string_diff()</strong> function.  An optional <strong>$flags</strong> parameter
  specifies mode of operation.

<comment>Param:</comment>
  <info>string</info>  <strong>$file</strong>   The original file.
  <info>string</info>  <strong>$patch</strong>  The unified patch file. It has to be created using <strong>xdiff_string_diff()</strong>,
                  <strong>xdiff_file_diff()</strong> functions or compatible tools.
  <info>string</info>  <strong>$dest</strong>   Path of the resulting file.
  <info>int</info>     <strong>$flags</strong>  Can be either <info>XDIFF_PATCH_NORMAL</info> (default mode, normal patch) or
                  <info>XDIFF_PATCH_REVERSE</info> (reversed patch).
                  
                  Starting from version 1.5.0, you can also use binary OR to enable
                  <info>XDIFF_PATCH_IGNORESPACE</info> flag.

<comment>Return:</comment>
  <info>mixed</info>  Returns <info>false</info> if an internal error happened, string with rejected chunks if patch couldn't
         be applied or <info>true</info> if patch has been successfully applied.

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


id: xdiff_file_patch_binary
type: function
doc:
<comment>Description:</comment>
  别名 xdiff_file_bpatch
  
  Patches a <strong>$file</strong> with a binary <strong>$patch</strong> and stores the result in a file <strong>$dest</strong>.  This function accepts
  patches created both via <strong>xdiff_file_bdiff()</strong>  or <strong>xdiff_file_rabdiff()</strong> functions or their string
  counterparts.
  
  Starting with version 1.5.0 this function is an alias of <strong>xdiff_file_bpatch()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$file</strong>   The original file.
  <info>string</info>  <strong>$patch</strong>  The binary patch file.
  <info>string</info>  <strong>$dest</strong>   Path of the resulting file.

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

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


id: xdiff_file_rabdiff
type: function
doc:
<comment>Description:</comment>
  Make binary diff of two files using the Rabin's polynomial fingerprinting algorithm
  
  Makes a binary diff of two files and stores the result in a patch file. The difference between
  this function and <strong>xdiff_file_bdiff()</strong> is different algorithm used which should result in faster
  execution and smaller diff produced. This function works with both text and binary files.
  Resulting patch file can be later applied using <strong>xdiff_file_bpatch()</strong>/<strong>xdiff_string_bpatch()</strong>.
  
  For more details about differences between algorithm used please check libxdiff  website.

<comment>Param:</comment>
  <info>string</info>  <strong>$old_file</strong>  Path to the first file. This file acts as "old" file.
  <info>string</info>  <strong>$new_file</strong>  Path to the second file. This file acts as "new" file.
  <info>string</info>  <strong>$dest</strong>      Path of the resulting patch file. Resulting file contains differences between
                     "old" and "new" files. It is in binary format and is human-unreadable.

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

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


id: xdiff_string_bdiff
type: function
doc:
<comment>Description:</comment>
  Make binary diff of two strings
  
  Makes a binary diff of two strings and returns the result. This function works with both text and
  binary data. Resulting patch can be later applied using <strong>xdiff_string_bpatch()</strong>/<strong>xdiff_file_bpatch()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$old_data</strong>  First string with binary data. It acts as "old" data.
  <info>string</info>  <strong>$new_data</strong>  Second string with binary data. It acts as "new" data.

<comment>Return:</comment>
  <info>string</info>  Returns string with binary diff containing differences between "old" and "new" data or
          <info>false</info> if an internal error occurred.

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


id: xdiff_string_bdiff_size
type: function
doc:
<comment>Description:</comment>
  Read a size of file created by applying a binary diff
  
  Returns a size of a result file that would be created after applying binary <strong>$patch</strong> to the original
  file.

<comment>Param:</comment>
  <info>string</info>  <strong>$patch</strong>  The binary patch created by <strong>xdiff_string_bdiff()</strong> or  <strong>xdiff_string_rabdiff()</strong>
                  function.

<comment>Return:</comment>
  <info>int</info>  Returns the size of file that would be created.

<comment>See Also:</comment>
   * <strong>xdiff_string_bdiff()</strong>
   * <strong>xdiff_string_rabdiff()</strong>
   * <strong>xdiff_string_bpatch()</strong>


id: xdiff_string_bpatch
type: function
doc:
<comment>Description:</comment>
  Patch a string with a binary diff
  
  Patches a string <strong>$str</strong> with a binary <strong>$patch</strong>. This function accepts patches created both via
  <strong>xdiff_string_bdiff()</strong>  and <strong>xdiff_string_rabdiff()</strong> functions or their file counterparts.

<comment>Param:</comment>
  <info>string</info>  <strong>$str</strong>    The original binary string.
  <info>string</info>  <strong>$patch</strong>  The binary patch string.

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

<comment>See Also:</comment>
   * <strong>xdiff_string_bdiff()</strong>
   * <strong>xdiff_string_rabdiff()</strong>


id: xdiff_string_diff
type: function
doc:
<comment>Description:</comment>
  Make unified diff of two strings
  
  Makes an unified diff containing differences between <strong>$old_data</strong> string and <strong>$new_data</strong> string and
  returns it. The resulting diff is human-readable.  An optional <strong>$context</strong> parameter specifies how
  many lines of context should be added around each change. Setting <strong>$minimal</strong> parameter  to true will
  result in outputting the shortest patch file possible (can take a long time).

<comment>Param:</comment>
  <info>string</info>  <strong>$old_data</strong>  First string with data. It acts as "old" data.
  <info>string</info>  <strong>$new_data</strong>  Second string with data. It acts as "new" data.
  <info>int</info>     <strong>$context</strong>   Indicates how many lines of context you want to include in the diff result.
  <info>bool</info>    <strong>$minimal</strong>   Set this parameter to <info>true</info> if you want to minimalize the size of the result
                     (can take a long time).

<comment>Return:</comment>
  <info>string</info>  Returns string with resulting diff or <info>false</info> if an internal error happened.

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


id: xdiff_string_diff_binary
type: function
doc:
<comment>Description:</comment>
  别名 xdiff_string_bdiff
  
  Makes a binary diff of two strings and returns the result. This function works with both text and
  binary data. Resulting patch can be later applied using <strong>xdiff_string_bpatch()</strong>/<strong>xdiff_file_bpatch()</strong>.
  
  Starting with version 1.5.0 this function is an alias of <strong>xdiff_string_bdiff()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$old_data</strong>  First string with binary data. It acts as "old" data.
  <info>string</info>  <strong>$new_data</strong>  Second string with binary data. It acts as "new" data.

<comment>Return:</comment>
  <info>string</info>  Returns string with result or <info>false</info> if an internal error happened.

<comment>See Also:</comment>
   * <strong>xdiff_string_bdiff()</strong>
   * <strong>xdiff_string_bpatch()</strong>


id: xdiff_string_merge3
type: function
doc:
<comment>Description:</comment>
  Merge 3 strings into one
  
  Merges three strings into one and returns the result. The <strong>$old_data</strong> is an original version of data
  while <strong>$new_data1</strong> and <strong>$new_data2</strong> are modified  versions of an original. An optional <strong>$error</strong> is used
  to pass any rejected parts during merging process.

<comment>Param:</comment>
  <info>string</info>  <strong>$old_data</strong>   First string with data. It acts as "old" data.
  <info>string</info>  <strong>$new_data1</strong>  Second string with data. It acts as modified version of <strong>$old_data</strong>.
  <info>string</info>  <strong>$new_data2</strong>  Third string with data. It acts as modified version of <strong>$old_data</strong>.
  <info>string</info>  <strong>$error</strong>      If provided then rejected parts are stored inside this variable.

<comment>Return:</comment>
  <info>mixed</info>  Returns the merged string, <info>false</info> if an internal error happened, or <info>true</info> if merged string is
         empty.

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


id: xdiff_string_patch
type: function
doc:
<comment>Description:</comment>
  Patch a string with an unified diff
  
  Patches a <strong>$str</strong> string with an unified patch in <strong>$patch</strong> parameter  and returns the result. <strong>$patch</strong>
  has to be an unified diff created by  <strong>xdiff_file_diff()</strong>/<strong>xdiff_string_diff()</strong> function.  An optional
  <strong>$flags</strong> parameter specifies mode of operation. Any rejected parts of the patch will be stored
  inside <strong>$error</strong> variable if  it is provided.

<comment>Param:</comment>
  <info>string</info>  <strong>$str</strong>    The original string.
  <info>string</info>  <strong>$patch</strong>  The unified patch string. It has to be created using <strong>xdiff_string_diff()</strong>,
                  <strong>xdiff_file_diff()</strong> functions or compatible tools.
  <info>int</info>     <strong>$flags</strong>  <strong>$flags</strong> can be either <info>XDIFF_PATCH_NORMAL</info> (default mode, normal patch) or
                  <info>XDIFF_PATCH_REVERSE</info> (reversed patch).
                  
                  Starting from version 1.5.0, you can also use binary OR to enable
                  <info>XDIFF_PATCH_IGNORESPACE</info> flag.
  <info>string</info>  <strong>$error</strong>  If provided then rejected parts are stored inside this variable.

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

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


id: xdiff_string_patch_binary
type: function
doc:
<comment>Description:</comment>
  别名 xdiff_string_bpatch
  
  Patches a string <strong>$str</strong> with a binary <strong>$patch</strong>. This function accepts patches created both via
  <strong>xdiff_string_bdiff()</strong>  and <strong>xdiff_string_rabdiff()</strong> functions or their file counterparts.
  
  Starting with version 1.5.0 this function is an alias of <strong>xdiff_string_bpatch()</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$str</strong>    The original binary string.
  <info>string</info>  <strong>$patch</strong>  The binary patch string.

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

<comment>See Also:</comment>
   * <strong>xdiff_string_bpatch()</strong>
   * <strong>xdiff_string_bdiff()</strong>
   * <strong>xdiff_string_rabdiff()</strong>


id: xdiff_string_rabdiff
type: function
doc:
<comment>Description:</comment>
  Make binary diff of two strings using the Rabin's polynomial fingerprinting algorithm
  
  Makes a binary diff of two strings and returns the result. The difference between this function
  and <strong>xdiff_string_bdiff()</strong> is different algorithm used which should result in faster execution and
  smaller diff produced. This function works with both text and binary data. Resulting patch can be
  later applied using <strong>xdiff_string_bpatch()</strong>/<strong>xdiff_file_bpatch()</strong>.
  
  For more details about differences between algorithm used please check libxdiff  website.

<comment>Param:</comment>
  <info>string</info>  <strong>$old_data</strong>  First string with binary data. It acts as "old" data.
  <info>string</info>  <strong>$new_data</strong>  Second string with binary data. It acts as "new" data.

<comment>Return:</comment>
  <info>string</info>  Returns string with binary diff containing differences between "old" and "new" data or
          <info>false</info> if an internal error occurred.

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


id: xhprof_disable
type: function
doc:
<comment>Description:</comment>
  停止 xhprof 分析器
  
  停止性能分析，并返回此次运行的 xhprof 数据。

<comment>Return:</comment>
  <info>array</info>  本次运行的 <info>array</info> 类型的 xhprof 数据。


id: xhprof_enable
type: function
doc:
<comment>Description:</comment>
  启动 xhprof 性能分析器
  
  启动 xhprof 进行性能分析。

<comment>Param:</comment>
  <info>int</info>    <strong>$flags</strong>    分析添加额外信息的可选标记。 关于此标记的更多信息参见 XHprof 常量，例如，
                   <info>XHPROF_FLAGS_MEMORY</info> 可以开启内存的分析。
  <info>array</info>  <strong>$options</strong>  <info>array</info> 的可选选项，就是通过传递 'ignored_functions' 选项来忽略性能分析中的某些函
                   数。

<comment>Return:</comment>
  <info>void</info>  <info>null</info>

<comment>See Also:</comment>
   * <strong>xhprof_disable()</strong>
   * <strong>xhprof_sample_enable()</strong>
   * <strong>memory_get_usage()</strong>
   * <strong>getrusage()</strong>


id: xhprof_sample_disable
type: function
doc:
<comment>Description:</comment>
  停止 xhprof 性能采样分析器
  
  停止采样模式的 xhprof 分析器。

<comment>Return:</comment>
  <info>array</info>  本次运行的xhprof采样数据，<info>array</info> 类型。


id: xhprof_sample_enable
type: function
doc:
<comment>Description:</comment>
  以采样模式启动 XHProf 性能分析
  
  <strong>xhprof_enable()</strong> 的更轻量的版本，以采样模式开始性能分析。 抽样的间隔为 0.1 秒，样本记录了完整的函数
  调用堆栈。 主要使用的情况是以较低的性能开销来进行性能监控和诊断。

<comment>Return:</comment>
  <info>void</info>  <info>null</info>

<comment>See Also:</comment>
   * <strong>xhprof_sample_disable()</strong>
   * <strong>xhprof_enable()</strong>
   * <strong>memory_get_usage()</strong>
   * <strong>getrusage()</strong>


id: xml_error_string
type: function
doc:
<comment>Description:</comment>
  获取 XML 解析器的错误字符串
  
  获取与指定 <strong>$error_code</strong> 关联的 XML 解析器错误字符串。

<comment>Param:</comment>
  <info>int</info>  <strong>$error_code</strong>  由 <strong>xml_get_error_code()</strong> 返回的错误代码。

<comment>Return:</comment>
  <info>string|null</info>  返回带有错误 <strong>$error_code</strong> 文本描述的字符串，若没有与之对应的描述，则返回 <info>null</info>。

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


id: xml_get_current_byte_index
type: function
doc:
<comment>Description:</comment>
  获取 XML 解析器的当前字节索引
  
  获取指定 XML 解析器的当前字节索引（current byte index）。

<comment>Param:</comment>
  <info>XMLParser</info>  <strong>$parser</strong>  指向要取得字节索引的 XML 解析器的引用。

<comment>Return:</comment>
  <info>int</info>  返回解析器当前在其数据缓冲区中的字节索引（起始值为 0）。

<comment>See Also:</comment>
   * <strong>xml_get_current_column_number()</strong>
   * <strong>xml_get_current_line_number()</strong>


id: xml_get_current_column_number
type: function
doc:
<comment>Description:</comment>
  获取 XML 解析器的当前列号
    
  
  获得指定 XML 解析器当前的列号。

<comment>Param:</comment>
  <info>XMLParser</info>  <strong>$parser</strong>  一个指向要获取列号的 XML 解析器的指针。

<comment>Return:</comment>
  <info>int</info>  返回指定解析器所在行（由函数 <strong>xml_get_current_line_number()</strong> 给出）的列号。

<comment>See Also:</comment>
   * <strong>xml_get_current_byte_index()</strong>
   * <strong>xml_get_current_line_number()</strong>


id: xml_get_current_line_number
type: function
doc:
<comment>Description:</comment>
  获取 XML 解析器的当前行号
  
  获取指定 XML 解析器当前的行号。

<comment>Param:</comment>
  <info>XMLParser</info>  <strong>$parser</strong>  一个指向要获取当前行号的 XML 解析器的指针。

<comment>Return:</comment>
  <info>int</info>  返回解析器当前在其数据缓冲区的行号。

<comment>See Also:</comment>
   * <strong>xml_get_current_column_number()</strong>
   * <strong>xml_get_current_byte_index()</strong>


id: xml_get_error_code
type: function
doc:
<comment>Description:</comment>
  获取 XML 解析器错误代码
  
  获取 XML 解析器错误代码。

<comment>Param:</comment>
  <info>XMLParser</info>  <strong>$parser</strong>  一个指向要返回错误代码的 XML 解析器的指针

<comment>Return:</comment>
  <info>int</info>  返回错误代码部分列出中的某个错误代码。

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


id: xml_parse
type: function
doc:
<comment>Description:</comment>
  开始解析 XML 文档
  
  <strong>xml_parse()</strong> 解析 XML 文档。已配置事件的处理程序根据需要被无限次调用。

<comment>Param:</comment>
  <info>XMLParser</info>  <strong>$parser</strong>    指向将要使用的 XML 解析器的指针。
  <info>string</info>     <strong>$data</strong>      要解析的数据块。可以通过使用新数据多次调用 <strong>xml_parse()</strong> 来分段解析文档，只要
                        在解析最后一个数据时设置 <strong>$is_final</strong> 参数且为 <info>true</info> 即可。
  <info>bool</info>       <strong>$is_final</strong>  如果被设置为 <info>true</info>，则 <strong>$data</strong> 为当前解析中最后一段数据。

<comment>Return:</comment>
  <info>int</info>  成功时返回 1，失败时返回 0。
       
       若解析失败，可以使用如下函数获取错误信息：<strong>xml_get_error_code()</strong>、<strong>xml_error_string()</strong>、
       <strong>xml_get_current_line_number()</strong>、<strong>xml_get_current_column_number()</strong> 和
       <strong>xml_get_current_byte_index()</strong>。
       
       将 <strong>$is_final</strong> 参数设置为 <info>true</info>，一些错误（例如 entity 错误）将会在数据末尾报告。


id: xml_parse_into_struct
type: function
doc:
<comment>Description:</comment>
  解析 XML 数据到数组中
  
  该函数解析 XML 字符串到两个对应的数组中，一个（<strong>$index</strong>）含有指向 <strong>$values</strong> 数组中对应值的指针。最后两
  个参数必须通过引用传递。

<comment>Param:</comment>
  <info>XMLParser</info>  <strong>$parser</strong>  引用的 XML 解析器。
  <info>string</info>     <strong>$data</strong>    包含 XML 数据的字符串。
  <info>array</info>      <strong>$values</strong>  包含 XML 数据值的数组
  <info>array</info>      <strong>$index</strong>   包含指向 $values 中适当值位置的指针的数组。

<comment>Return:</comment>
  <info>int</info>  <strong>xml_parse_into_struct()</strong> 失败时返回 0，成功返回 1。这和 <info>false</info> 与 <info>true</info> 不同，使用运算符（比如
       ===）时要小心。


id: xml_parser_create
type: function
doc:
<comment>Description:</comment>
  创建 XML 解析器
  
  <strong>xml_parser_create()</strong> 新建 XML 解析器并返回可被其它 XML 函数使用的 <class>XMLParser</class> 实例。

<comment>Param:</comment>
  <info>string|null</info>  <strong>$encoding</strong>  自动检测输入编码，因此 <strong>$encoding</strong> 参数仅指定输出编码。默认输出字符集是
                          UTF-8。如果传递的是空字符串，解析器会尝试通过查看头的的 3 或 4 个字节来识
                          别文档的编码方式。支持的编码有 <return>ISO-8859-1</return>、<return>UTF-8</return> 和 <return>US-ASCII</return>。

<comment>Return:</comment>
  <info>XMLParser</info>  返回新 <class>XMLParser</class> 实例。

<comment>See Also:</comment>
   * <strong>xml_parser_create_ns()</strong>
   * <strong>xml_parser_free()</strong>


id: xml_parser_create_ns
type: function
doc:
<comment>Description:</comment>
  创建支持命名空间的 XML 解析器
  
  <strong>xml_parser_create_ns()</strong> 新建支持 XML 命名空间的解析器并返回可被其它 XML 函数使用的 <class>XMLParser</class> 实例。

<comment>Param:</comment>
  <info>string|null</info>  <strong>$encoding</strong>   自动检测输入编码，因此 <strong>$encoding</strong> 参数仅指定输出编码。默认输出字符集是
                           UTF-8。支持的编码有 <return>ISO-8859-1</return>、<return>UTF-8</return> 和 <return>US-ASCII</return>。
  <info>string</info>       <strong>$separator</strong>  使用名称空间感知的解析器标记参数传递给各种处理函数将由名称空间和标记名称
                           组成，这些名称由 <strong>$separator</strong> 中指定的字符串分隔。

<comment>Return:</comment>
  <info>XMLParser</info>  返回新 <class>XMLParser</class> 实例。

<comment>See Also:</comment>
   * <strong>xml_parser_create()</strong>
   * <strong>xml_parser_free()</strong>


id: xml_parser_free
type: function
doc:
<comment>Description:</comment>
  释放 XML 解析器
  
  此函数无效。在 PHP 8.0.0 之前，用于关闭资源。
  
  释放指定 XML <strong>$parser</strong>。
  
  除了在解析完成时调用 <strong>xml_parser_free()</strong> 之外，在 PHP 8.0.0 之前，如果 parser 资源引用自对象，且对象
  引用 parser 资源，还必须明确取消对 <strong>$parser</strong> 的引用以避免内存泄漏。

<comment>Param:</comment>
  <info>XMLParser</info>  <strong>$parser</strong>  指向要释放的 XML 解析器的指针。

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


id: xml_parser_get_option
type: function
doc:
<comment>Description:</comment>
  从 XML 解析器获取选项
  
  从 XML 解析器获取选项值。

<comment>Param:</comment>
  <info>XMLParser</info>  <strong>$parser</strong>  指向要获取选项的 XML 解析器。
  <info>int</info>        <strong>$option</strong>  要获取的选项。可以用 <info>XML_OPTION_CASE_FOLDING</info>、<info>XML_OPTION_SKIP_TAGSTART</info>、
                      <info>XML_OPTION_SKIP_WHITE</info> 和 <info>XML_OPTION_TARGET_ENCODING</info>。参阅
                      <strong>xml_parser_set_option()</strong> 获取相应描述。

<comment>Return:</comment>
  <info>string|int|bool</info>  返回选项的值。


id: xml_parser_set_option
type: function
doc:
<comment>Description:</comment>
  在 XML 解析器中设置选项
  
  在 XML 解析器中设置选项。

<comment>Param:</comment>
  <info>XMLParser</info>        <strong>$parser</strong>  指向要设置选项的 XML 解析器。
  <info>int</info>              <strong>$option</strong>  要设置的选项。见下文。
                            
                            以下选项可用： XML 解析器选项选项常量数据类型说明
                            <info>XML_OPTION_CASE_FOLDING</info>bool 控制是否为此 XML 解析器启用大写转换。默认启
                            用。 <info>XML_OPTION_SKIP_TAGSTART</info>integer 指定在标记名称的开头应略过多少个字
                            符。 <info>XML_OPTION_SKIP_WHITE</info>bool 是否略过由空白字符组成的值。
                            <info>XML_OPTION_TARGET_ENCODING</info>string 设置要在此 XML 解析器中使用的目标编码。
                            默认情况下，设置的编码与 <strong>xml_parser_create()</strong> 使用的源编码相同。支持的目
                            标编码有 <return>ISO-8859-1</return>、<return>US-ASCII</return> 和 <return>UTF-8</return>。
  <info>string|int|bool</info>  <strong>$value</strong>   选项的新值。

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


id: xml_set_character_data_handler
type: function
doc:
<comment>Description:</comment>
  建立字符数据处理器
  
  为 <strong>$parser</strong> 变量指向的 XML 解析器指定字符数据处理函数。

<comment>Param:</comment>
  <info>XMLParser</info>  <strong>$parser</strong>   XML 解析器。
  <info>callable</info>   <strong>$handler</strong>  如果传递 <info>null</info> 或空字符串，处理程序将重置为其默认状态。
                       
                       如果 <strong>$handler</strong> 是 <info>callable</info>，设置的 callable 将作为处理程序。
                       
                       如果 <strong>$handler</strong> 是 <info>string</info>，它可以是 <strong>xml_set_object()</strong> 设置的对象的方法名称。
                       
                       处理程序的签名必须是： <info>void</info>handler<info>XMLParser</info><strong>$parser</strong><info>string</info><strong>$data</strong> <strong>$parser</strong> XML 解
                       析器调用的处理程序。 <strong>$data</strong> 字符串格式的字符数据。
                       
                       XML 解析器调用的处理程序。
                       
                       字符串格式的字符数据。
                       
                       XML 文档的每段文字都会调用字符数据处理程序。可以在每个片段内多次调用（比如非
                       ASCII 字符串）。
  <info>XMLParser</info>  <strong>$parser</strong>   XML 解析器调用的处理程序。
  <info>string</info>     <strong>$data</strong>     字符串格式的字符数据。

<comment>Return:</comment>
  <info>true</info>  总是返回 <info>true</info>。


id: xml_set_default_handler
type: function
doc:
<comment>Description:</comment>
  建立默认处理程序
  
  为 <strong>$parser</strong> 指定的 XML 处理程序建立默认处理函数。

<comment>Param:</comment>
  <info>XMLParser</info>  <strong>$parser</strong>   XML 解析器。
  <info>callable</info>   <strong>$handler</strong>  如果传递 <info>null</info> 或空字符串，处理程序将重置为其默认状态。
                       
                       如果 <strong>$handler</strong> 是 <info>callable</info>，设置的 callable 将作为处理程序。
                       
                       如果 <strong>$handler</strong> 是 <info>string</info>，它可以是 <strong>xml_set_object()</strong> 设置的对象的方法名称。
                       
                       处理程序的签名必须是： <info>void</info>handler<info>XMLParser</info><strong>$parser</strong><info>string</info><strong>$data</strong> <strong>$parser</strong> XML 解
                       析器调用的处理程序。 <strong>$data</strong><strong>$data</strong> 包含字符数据。可以是 XML 声明、文档类型声明、
                       实体名或者其它没有已存在处理程序的数据。
                       
                       XML 解析器调用的处理程序。
                       
                       <strong>$data</strong> 包含字符数据。可以是 XML 声明、文档类型声明、实体名或者其它没有已存在处
                       理程序的数据。
  <info>XMLParser</info>  <strong>$parser</strong>   XML 解析器调用的处理程序。
  <info>string</info>     <strong>$data</strong>     <strong>$data</strong> 包含字符数据。可以是 XML 声明、文档类型声明、实体名或者其它没有已存在处
                       理程序的数据。

<comment>Return:</comment>
  <info>true</info>  总是返回 <info>true</info>。


id: xml_set_element_handler
type: function
doc:
<comment>Description:</comment>
  建立起始和终止元素处理程序
  
  为 <strong>$parser</strong> 参数指定的 XML 解析器建立元素处理函数。
  
  当打开新的 XML 元素时调用 <strong>$start_handler</strong>，当关闭 XML 元素时调用 <strong>$end_handler</strong>。

<comment>Param:</comment>
  <info>XMLParser</info>  <strong>$parser</strong>         XML 解析器。
  <info>callable</info>   <strong>$start_handler</strong>  如果传递 <info>null</info> 或空字符串，处理程序将重置为其默认状态。
                             
                             如果 <strong>$handler</strong> 是 <info>callable</info>，设置的 callable 将作为处理程序。
                             
                             如果 <strong>$handler</strong> 是 <info>string</info>，它可以是 <strong>xml_set_object()</strong> 设置的对象的方法名
                             称。
                             
                             处理程序的签名必须是：
                             <info>void</info>start_element_handler<info>XMLParser</info><strong>$parser</strong><info>string</info><strong>$name</strong><info>array</info><strong>$attributes</strong>
                             <strong>$parser</strong> XML 解析器调用的处理程序。 <strong>$name</strong> 包含调用此处理程序的元素名称。
                             如果大写转换对该解析器有效，元素名将用大写字母表示。 <strong>$attributes</strong> 带有元
                             素属性的关联数组。如果元素没有数组则为空数组。数组元素的下标为属性名，
                             元素的值即为属性的值。属性名将以和元素名同样的标准进行大写转换，值不进
                             行大写转换。  遍历 <strong>$attributes</strong> 的顺序与声明 attributes 的顺序相同。
                             
                             XML 解析器调用的处理程序。
                             
                             包含调用此处理程序的元素名称。如果大写转换对该解析器有效，元素名将用大
                             写字母表示。
                             
                             带有元素属性的关联数组。如果元素没有数组则为空数组。数组元素的下标为属
                             性名，元素的值即为属性的值。属性名将以和元素名同样的标准进行大写转换，
                             值不进行大写转换。
                             
                             遍历 <strong>$attributes</strong> 的顺序与声明 attributes 的顺序相同。
  <info>XMLParser</info>  <strong>$parser</strong>         XML 解析器调用的处理程序。
  <info>string</info>     <strong>$name</strong>           包含调用此处理程序的元素名称。如果大写转换对该解析器有效，元素名将用大
                             写字母表示。
  <info>array</info>      <strong>$attributes</strong>     带有元素属性的关联数组。如果元素没有数组则为空数组。数组元素的下标为属
                             性名，元素的值即为属性的值。属性名将以和元素名同样的标准进行大写转换，
                             值不进行大写转换。
                             
                             遍历 <strong>$attributes</strong> 的顺序与声明 attributes 的顺序相同。
  <info>callable</info>   <strong>$end_handler</strong>    如果传递 <info>null</info> 或空字符串，处理程序将重置为其默认状态。
                             
                             如果 <strong>$handler</strong> 是 <info>callable</info>，设置的 callable 将作为处理程序。
                             
                             如果 <strong>$handler</strong> 是 <info>string</info>，它可以是 <strong>xml_set_object()</strong> 设置的对象的方法名
                             称。
                             
                             处理程序的签名必须是：
                             <info>void</info>end_element_handler<info>XMLParser</info><strong>$parser</strong><info>string</info><strong>$name</strong> <strong>$parser</strong> XML 解析器调
                             用的处理程序。 <strong>$name</strong> 包含调用此处理程序的元素名称。如果大写转换对该解析
                             器有效，元素名将用大写字母表示。
                             
                             XML 解析器调用的处理程序。
                             
                             包含调用此处理程序的元素名称。如果大写转换对该解析器有效，元素名将用大
                             写字母表示。
  <info>XMLParser</info>  <strong>$parser</strong>         XML 解析器调用的处理程序。
  <info>string</info>     <strong>$name</strong>           包含调用此处理程序的元素名称。如果大写转换对该解析器有效，元素名将用大
                             写字母表示。

<comment>Return:</comment>
  <info>true</info>  总是返回 <info>true</info>。


id: xml_set_end_namespace_decl_handler
type: function
doc:
<comment>Description:</comment>
  设置终止命名空间声明处理程序
  
  设置离开命名空间声明作用域时要调用的处理程序。对于每个命名空间声明，这将在声明命名空间的元素的结束
  标记的处理程序之后调用。
  
  libXML 不支持此事件，因此不会调用已注册的处理程序。

<comment>Param:</comment>
  <info>XMLParser</info>     <strong>$parser</strong>   XML 解析器。
  <info>callable</info>      <strong>$handler</strong>  如果传递 <info>null</info> 或空字符串，处理程序将重置为其默认状态。
                          
                          如果 <strong>$handler</strong> 是 <info>callable</info>，设置的 callable 将作为处理程序。
                          
                          如果 <strong>$handler</strong> 是 <info>string</info>，它可以是 <strong>xml_set_object()</strong> 设置的对象的方法名称。
                          
                          处理程序的签名必须是： handler<info>XMLParser</info><strong>$parser</strong><info>string</info><info>false</info></info><strong>$prefix</strong> <strong>$parser</strong>
                          XML 解析器调用的处理程序。 <strong>$prefix</strong> 前缀是一个字符串，用于引用 XML 对象中的
                          命名空间。如果不存在前缀，则为 <info>false</info>。
                          
                          XML 解析器调用的处理程序。
                          
                          前缀是一个字符串，用于引用 XML 对象中的命名空间。如果不存在前缀，则为
                          <info>false</info>。
  <info>XMLParser</info>     <strong>$parser</strong>   XML 解析器调用的处理程序。
  <info>string|false</info>  <strong>$prefix</strong>   前缀是一个字符串，用于引用 XML 对象中的命名空间。如果不存在前缀，则为
                          <info>false</info>。

<comment>Return:</comment>
  <info>true</info>  总是返回 <info>true</info>。

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


id: xml_set_external_entity_ref_handler
type: function
doc:
<comment>Description:</comment>
  设置外部实体引用处理程序
  
  为 XML 解析器 <strong>$parser</strong> 设置外部实体引用处理函数。

<comment>Param:</comment>
  <info>XMLParser</info>     <strong>$parser</strong>             XML 解析器。
  <info>callable</info>      <strong>$handler</strong>            如果传递 <info>null</info> 或空字符串，处理程序将重置为其默认状态。
                                    
                                    如果 <strong>$handler</strong> 是 <info>callable</info>，设置的 callable 将作为处理程序。
                                    
                                    如果 <strong>$handler</strong> 是 <info>string</info>，它可以是 <strong>xml_set_object()</strong> 设置的对象的
                                    方法名称。
                                    
                                    处理程序的签名必须是：
                                    <info>bool</info>handler<info>XMLParser</info><strong>$parser</strong><info>string</info><strong>$open_entity_names</strong><info>string</info><info>false</info></info><strong>$base</strong><info>string</info><strong>$system_id</strong><info>string</info><info>false</info></info><strong>$public_id</strong>
                                    <strong>$parser</strong> XML 解析器调用的处理程序。 <strong>$open_entity_names</strong> 为该实体的
                                    解析开放的实体名列表（包括被指向的实体名），这些实体名由空格隔
                                    开。 <strong>$base</strong> 这个参数是解析外部实体的系统标识符（<strong>$system_id</strong>）的基
                                    础。 <strong>$system_id</strong> 在实体定义声明中指定的系统标识符。 <strong>$public_id</strong> 在
                                    实体定义声明中指定的公共标识符，如果未指定任何标识符，则该字符串
                                    为空。公共标识符中的空格将按照 XML 的要求被正常化。
                                    
                                    XML 解析器调用的处理程序。
                                    
                                    为该实体的解析开放的实体名列表（包括被指向的实体名），这些实体名
                                    由空格隔开。
                                    
                                    这个参数是解析外部实体的系统标识符（<strong>$system_id</strong>）的基础。
                                    
                                    在实体定义声明中指定的系统标识符。
                                    
                                    在实体定义声明中指定的公共标识符，如果未指定任何标识符，则该字符
                                    串为空。公共标识符中的空格将按照 XML 的要求被正常化。
                                    
                                    如果实体已经处理，则处理程序应返回 <info>true</info>，否则返回 <info>false</info>。当返回
                                    <info>false</info> 时，XML 解析器将停止解析并且 <strong>xml_get_error_code()</strong> 将返回
                                    <info>XML_ERROR_EXTERNAL_ENTITY_HANDLING</info>。
  <info>XMLParser</info>     <strong>$parser</strong>             XML 解析器调用的处理程序。
  <info>string</info>        <strong>$open_entity_names</strong>  为该实体的解析开放的实体名列表（包括被指向的实体名），这些实体名
                                    由空格隔开。
  <info>string|false</info>  <strong>$base</strong>               这个参数是解析外部实体的系统标识符（<strong>$system_id</strong>）的基础。
  <info>string</info>        <strong>$system_id</strong>          在实体定义声明中指定的系统标识符。
  <info>string|false</info>  <strong>$public_id</strong>          在实体定义声明中指定的公共标识符，如果未指定任何标识符，则该字符
                                    串为空。公共标识符中的空格将按照 XML 的要求被正常化。

<comment>Return:</comment>
  <info>true</info>  总是返回 <info>true</info>。


id: xml_set_notation_decl_handler
type: function
doc:
<comment>Description:</comment>
  设置符号声明处理程序
  
  为 XML 解析器 <strong>$parser</strong> 设置符号声明处理函数。
  
  符号声明是文档 DTD 的一部分，并有如下格式： $name</strong>
  { <strong>$systemId</strong> | <strong>$publicId</strong>?>
  ]]> 有关符号声明的定义，请参考 XML 1.0 规范的第 4.7 节。

<comment>Param:</comment>
  <info>XMLParser</info>     <strong>$parser</strong>         XML 解析器。
  <info>callable</info>      <strong>$handler</strong>        如果传递 <info>null</info> 或空字符串，处理程序将重置为其默认状态。
                                
                                如果 <strong>$handler</strong> 是 <info>callable</info>，设置的 callable 将作为处理程序。
                                
                                如果 <strong>$handler</strong> 是 <info>string</info>，它可以是 <strong>xml_set_object()</strong> 设置的对象的方法
                                名称。
                                
                                处理程序的签名必须是：
                                <info>void</info>handler<info>XMLParser</info><strong>$parser</strong><info>string</info><strong>$notation_name</strong><info>string</info><info>false</info></info><strong>$base</strong><info>string</info><strong>$system_id</strong><info>string</info><info>false</info></info><strong>$public_id</strong>
                                <strong>$parser</strong> XML 解析器调用的处理程序。 <strong>$notation_name</strong> This is the
                                notation's name, as per the notation format described above. <strong>$base</strong>
                                这个参数是解析符号声明的系统标识符（<return>system_id</return>）的基础。 <strong>$system_id</strong>
                                外部符号声明的系统标识符。 <strong>$public_id</strong> 外部符号声明的公共标识符。
                                
                                XML 解析器调用的处理程序。
                                
                                This is the notation's name, as per the notation format described
                                above.
                                
                                这个参数是解析符号声明的系统标识符（<return>system_id</return>）的基础。
                                
                                外部符号声明的系统标识符。
                                
                                外部符号声明的公共标识符。
  <info>XMLParser</info>     <strong>$parser</strong>         XML 解析器调用的处理程序。
  <info>string</info>        <strong>$notation_name</strong>  This is the notation's name, as per the notation format described
                                above.
  <info>string|false</info>  <strong>$base</strong>           这个参数是解析符号声明的系统标识符（<return>system_id</return>）的基础。
  <info>string</info>        <strong>$system_id</strong>      外部符号声明的系统标识符。
  <info>string|false</info>  <strong>$public_id</strong>      外部符号声明的公共标识符。

<comment>Return:</comment>
  <info>true</info>  总是返回 <info>true</info>。


id: xml_set_object
type: function
doc:
<comment>Description:</comment>
  在对象中使用 XML 解析器
  
  此函数允许在 <strong>$object</strong> 内部使用 <strong>$parser</strong>。所有回调函数都可以用 <strong>xml_set_element_handler()</strong> 等设置，并假
  定为 <strong>$object</strong> 的方法。

<comment>Param:</comment>
  <info>XMLParser</info>  <strong>$parser</strong>  指向对象内要使用的 XML 解析器。
  <info>object</info>     <strong>$object</strong>  使用 XML 解析器的对象。

<comment>Return:</comment>
  <info>true</info>  总是返回 <info>true</info>。


id: xml_set_processing_instruction_handler
type: function
doc:
<comment>Description:</comment>
  建立处理指令（PI）处理程序
    
  
  为 <strong>$parser</strong> XML 解析器设置处理指令（PI）处理函数。
  
  处理指令有如下格式： 
  ]]>
  
  PHP 代码通过 <return>\<?php</return> 处理指令分隔。因此可以在 XML 文档中使用 PHP 代码。但是 PI 结束标记（<return>?&gt;</return>）不能是数据的一部分。如果 PI 结束标记存在于嵌入式 PHP 代码的一部分，则 PHP 代码的其余部分以及“真实的”PI 结束标记将会视为字符数据。

<comment>Param:</comment>
  <info>XMLParser</info>  <strong>$parser</strong>   XML 解析器。
  <info>callable</info>   <strong>$handler</strong>  如果传递 <info>null</info> 或空字符串，处理程序将重置为其默认状态。
                       
                       如果 <strong>$handler</strong> 是 <info>callable</info>，设置的 callable 将作为处理程序。
                       
                       如果 <strong>$handler</strong> 是 <info>string</info>，它可以是 <strong>xml_set_object()</strong> 设置的对象的方法名称。
                       
                       处理程序的签名必须是： <info>void</info>handler<info>XMLParser</info><strong>$parser</strong><info>string</info><strong>$target</strong><info>string</info><strong>$data</strong>
                       <strong>$parser</strong> XML 解析器调用的处理程序。 <strong>$target</strong> 处理指令目标。 <strong>$data</strong> 处理指令数
                       据。
                       
                       XML 解析器调用的处理程序。
                       
                       处理指令目标。
                       
                       处理指令数据。
  <info>XMLParser</info>  <strong>$parser</strong>   XML 解析器调用的处理程序。
  <info>string</info>     <strong>$target</strong>   处理指令目标。
  <info>string</info>     <strong>$data</strong>     处理指令数据。

<comment>Return:</comment>
  <info>true</info>  总是返回 <info>true</info>。


id: xml_set_start_namespace_decl_handler
type: function
doc:
<comment>Description:</comment>
  设置起始命名空间声明处理程序
    
  
  设置在声明命名空间时要调用的处理程序。命名空间声明出现在开始标签内。开始标记内的命名空间声明，命名
  空间声明开始处理程序在开始标记处理程序之前调用。

<comment>Param:</comment>
  <info>XMLParser</info>     <strong>$parser</strong>   XML 解析器。
  <info>callable</info>      <strong>$handler</strong>  如果传递 <info>null</info> 或空字符串，处理程序将重置为其默认状态。
                          
                          如果 <strong>$handler</strong> 是 <info>callable</info>，设置的 callable 将作为处理程序。
                          
                          如果 <strong>$handler</strong> 是 <info>string</info>，它可以是 <strong>xml_set_object()</strong> 设置的对象的方法名称。
                          
                          处理程序的签名必须是：
                          <info>void</info>handler<info>XMLParser</info><strong>$parser</strong><info>string</info><info>false</info></info><strong>$prefix</strong><info>string</info><strong>$uri</strong> <strong>$parser</strong> XML 解析器
                          调用的处理程序。 <strong>$prefix</strong> 前缀是一个字符串，用于引用 XML 对象中的命名空间。
                          如果不存在前缀则为 <info>false</info>。 <strong>$uri</strong> 命名空间的统一资源标识符 (URI)。
                          
                          XML 解析器调用的处理程序。
                          
                          前缀是一个字符串，用于引用 XML 对象中的命名空间。如果不存在前缀则为
                          <info>false</info>。
                          
                          命名空间的统一资源标识符 (URI)。
  <info>XMLParser</info>     <strong>$parser</strong>   XML 解析器调用的处理程序。
  <info>string|false</info>  <strong>$prefix</strong>   前缀是一个字符串，用于引用 XML 对象中的命名空间。如果不存在前缀则为
                          <info>false</info>。
  <info>string</info>        <strong>$uri</strong>      命名空间的统一资源标识符 (URI)。

<comment>Return:</comment>
  <info>true</info>  总是返回 <info>true</info>。

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


id: xml_set_unparsed_entity_decl_handler
type: function
doc:
<comment>Description:</comment>
  建立未解析实体定义声明处理程序
    
  
  为 <strong>$parser</strong> XML 解析器设置未解析实体声明处理函数。
  
  当 XML 解析器遇到如下含有 NDATA 声明的外部实体定义声明时，该 <strong>$handler</strong> 处理程序将被调用： $name</strong>
  {<strong>$publicId</strong> | <strong>$systemId</strong>} NDATA <strong>$notationName</strong>
  ]]>
  
  请参阅 XML 1.0 参考的第 4.2.2 节以获取有关已声明外部实体注释定义的信息。

<comment>Param:</comment>
  <info>XMLParser</info>     <strong>$parser</strong>         XML 解析器。
  <info>callable</info>      <strong>$handler</strong>        如果传递 <info>null</info> 或空字符串，处理程序将重置为其默认状态。
                                
                                如果 <strong>$handler</strong> 是 <info>callable</info>，设置的 callable 将作为处理程序。
                                
                                如果 <strong>$handler</strong> 是 <info>string</info>，它可以是 <strong>xml_set_object()</strong> 设置的对象的方法
                                名称。
                                
                                处理程序的签名必须是：
                                <info>void</info>handler<info>XMLParser</info><strong>$parser</strong><info>string</info><strong>$entity_name</strong><info>string</info><info>false</info></info><strong>$base</strong><info>string</info><strong>$system_id</strong><info>string</info><info>false</info></info><strong>$public_id</strong><info>string</info><info>false</info></info><strong>$notation_name</strong>
                                <strong>$parser</strong> XML 解析器调用的处理程序。 <strong>$entity_name</strong> 将被定义的实体名。
                                <strong>$base</strong> 这个参数是解析外部实体的系统标识符（<strong>$system_id</strong>）的基础。
                                <strong>$system_id</strong> 外部实体的系统标识符。 <strong>$public_id</strong>  外部实体的公共标识符。
                                <strong>$notation_name</strong>  该实体的注释名（请参阅
                                <strong>xml_set_notation_decl_handler()</strong>）。
                                
                                XML 解析器调用的处理程序。
                                
                                将被定义的实体名。
                                
                                这个参数是解析外部实体的系统标识符（<strong>$system_id</strong>）的基础。
                                
                                外部实体的系统标识符。
                                
                                外部实体的公共标识符。
                                
                                该实体的注释名（请参阅 <strong>xml_set_notation_decl_handler()</strong>）。
  <info>XMLParser</info>     <strong>$parser</strong>         XML 解析器调用的处理程序。
  <info>string</info>        <strong>$entity_name</strong>    将被定义的实体名。
  <info>string|false</info>  <strong>$base</strong>           这个参数是解析外部实体的系统标识符（<strong>$system_id</strong>）的基础。
  <info>string</info>        <strong>$system_id</strong>      外部实体的系统标识符。
  <info>string|false</info>  <strong>$public_id</strong>      外部实体的公共标识符。
  <info>string|false</info>  <strong>$notation_name</strong>  该实体的注释名（请参阅 <strong>xml_set_notation_decl_handler()</strong>）。

<comment>Return:</comment>
  <info>true</info>  总是返回 <info>true</info>。


id: xmlrpc_decode
type: function
doc:
<comment>Description:</comment>
  将 XML 解码为原生 PHP 类型
  
  此函数是实验性的。此函数的表象，包括名称及其相关文档都可能在未来的
  PHP 发布版本中未通知就被修改。使用本函数风险自担。

<comment>Param:</comment>
  <info>string</info>  <strong>$xml</strong>       XMLRPC 方法返回的 XML 响应。
  <info>string</info>  <strong>$encoding</strong>  iconv 支持的输入编码。

<comment>Return:</comment>
  <info>mixed</info>  根据 XMLRPC 方法的响应返回数组、整数、字符串或布尔值。

<comment>See Also:</comment>
   * <strong>xmlrpc_encode_request()</strong>
   * <strong>xmlrpc_is_fault()</strong>


id: xmlrpc_decode_request
type: function
doc:
<comment>Description:</comment>
  将 XML 解码为原生 PHP 类型
  
  此函数是实验性的。此函数的表象，包括名称及其相关文档都可能在未来的
  PHP 发布版本中未通知就被修改。使用本函数风险自担。
  
  本函数还未编写文档，仅有参数列表。

<comment>Return:</comment>
  <info>mixed</info>  


id: xmlrpc_encode
type: function
doc:
<comment>Description:</comment>
  为 PHP 值生成 XML
  
  此函数是实验性的。此函数的表象，包括名称及其相关文档都可能在未来的
  PHP 发布版本中未通知就被修改。使用本函数风险自担。
  
  本函数还未编写文档，仅有参数列表。

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


id: xmlrpc_encode_request
type: function
doc:
<comment>Description:</comment>
  为方法请求生成 XML
  
  此函数是实验性的。此函数的表象，包括名称及其相关文档都可能在未来的
  PHP 发布版本中未通知就被修改。使用本函数风险自担。

<comment>Param:</comment>
  <info>string</info>  <strong>$method</strong>          要调用的方法名。
  <info>mixed</info>   <strong>$params</strong>          与方法签名兼容的方法参数。
  <info>array</info>   <strong>$output_options</strong>  指定输出选项的数组可能包含（强调默认值）： output_type: php,
                           xmlverbosity: no_white_space, newlines_only, prettyescaping: cdata,
                           non-ascii, non-print, markup (may be a string with one value or an array
                           with multiple values)version: simple, xmlrpc, soap 1.1, autoencoding:
                           iso-8859-1, other character set supported by iconv
                           
                           output_type: php, xml
                           
                           verbosity: no_white_space, newlines_only, pretty
                           
                           escaping: cdata, non-ascii, non-print, markup (may be a string with one
                           value or an array with multiple values)
                           
                           version: simple, xmlrpc, soap 1.1, auto
                           
                           encoding: iso-8859-1, other character set supported by iconv

<comment>Return:</comment>
  <info>string</info>  返回包含请求的 XML 表示形式的字符串。

<comment>See Also:</comment>
   * <strong>stream_context_create()</strong>
   * <strong>file_get_contents()</strong>
   * <strong>xmlrpc_decode()</strong>


id: xmlrpc_get_type
type: function
doc:
<comment>Description:</comment>
  获取 PHP 值的 xmlrpc 类型
  
  此函数是实验性的。此函数的表象，包括名称及其相关文档都可能在未来的
  PHP 发布版本中未通知就被修改。使用本函数风险自担。
  
  该函数对于 base64 与日期时间字符串特别有用。

<comment>Param:</comment>
  <info>mixed</info>  <strong>$value</strong>  PHP 值

<comment>Return:</comment>
  <info>string</info>  返回 XML-RPC 类型。

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


id: xmlrpc_is_fault
type: function
doc:
<comment>Description:</comment>
  Determines if an array value represents an XMLRPC fault
  
  此函数是实验性的。此函数的表象，包括名称及其相关文档都可能在未来的
  PHP 发布版本中未通知就被修改。使用本函数风险自担。

<comment>Param:</comment>
  <info>array</info>  <strong>$arg</strong>  Array returned by <strong>xmlrpc_decode()</strong>.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> if the argument means fault, <info>false</info> otherwise. Fault description is available in
        <return>$arg["faultString"]</return>, fault code is in <return>$arg["faultCode"]</return>.

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


id: xmlrpc_parse_method_descriptions
type: function
doc:
<comment>Description:</comment>
  将 XML 解码为方法描述列表
  
  此函数是实验性的。此函数的表象，包括名称及其相关文档都可能在未来的
  PHP 发布版本中未通知就被修改。使用本函数风险自担。
  
  本函数还未编写文档，仅有参数列表。

<comment>Return:</comment>
  <info>array</info>  


id: xmlrpc_server_add_introspection_data
type: function
doc:
<comment>Description:</comment>
  添加自我描述文档
  
  此函数是实验性的。此函数的表象，包括名称及其相关文档都可能在未来的
  PHP 发布版本中未通知就被修改。使用本函数风险自担。
  
  本函数还未编写文档，仅有参数列表。

<comment>Return:</comment>
  <info>int</info>  


id: xmlrpc_server_call_method
type: function
doc:
<comment>Description:</comment>
  解析 XML 请求和调用方法
  
  此函数是实验性的。此函数的表象，包括名称及其相关文档都可能在未来的
  PHP 发布版本中未通知就被修改。使用本函数风险自担。
  
  本函数还未编写文档，仅有参数列表。

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


id: xmlrpc_server_create
type: function
doc:
<comment>Description:</comment>
  创建 xmlrpc 服务器
  
  此函数是实验性的。此函数的表象，包括名称及其相关文档都可能在未来的
  PHP 发布版本中未通知就被修改。使用本函数风险自担。
  
  本函数还未编写文档，仅有参数列表。

<comment>Return:</comment>
  <info>resource</info>  


id: xmlrpc_server_destroy
type: function
doc:
<comment>Description:</comment>
  销毁服务端资源
  
  此函数是实验性的。此函数的表象，包括名称及其相关文档都可能在未来的
  PHP 发布版本中未通知就被修改。使用本函数风险自担。
  
  本函数还未编写文档，仅有参数列表。

<comment>Return:</comment>
  <info>bool</info>  


id: xmlrpc_server_register_introspection_callback
type: function
doc:
<comment>Description:</comment>
  注册 PHP 函数来生成文档
  
  此函数是实验性的。此函数的表象，包括名称及其相关文档都可能在未来的
  PHP 发布版本中未通知就被修改。使用本函数风险自担。
  
  本函数还未编写文档，仅有参数列表。

<comment>Return:</comment>
  <info>bool</info>  


id: xmlrpc_server_register_method
type: function
doc:
<comment>Description:</comment>
  注册 PHP 函数搭到资源用于匹配 method_name
  
  此函数是实验性的。此函数的表象，包括名称及其相关文档都可能在未来的
  PHP 发布版本中未通知就被修改。使用本函数风险自担。
  
  本函数还未编写文档，仅有参数列表。

<comment>Return:</comment>
  <info>bool</info>  


id: xmlrpc_set_type
type: function
doc:
<comment>Description:</comment>
  为 PHP 字符串值设置 xmlrpc 类型，base64 或 datetime
  
  为 PHP 字符串值设置 xmlrpc 类型，base64 或 datetime。
  
  此函数是实验性的。此函数的表象，包括名称及其相关文档都可能在未来的
  PHP 发布版本中未通知就被修改。使用本函数风险自担。

<comment>Param:</comment>
  <info>string</info>  <strong>$value</strong>  设置类型的值
  <info>string</info>  <strong>$type</strong>   'base64' 或 'datetime'

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。 如果成功，<strong>$value</strong> 将转换为对象。


id: yaml_emit
type: function
doc:
<comment>Description:</comment>
  Returns the YAML representation of a value
  
  Generate a YAML representation of the provided <strong>$data</strong>.

<comment>Param:</comment>
  <info>mixed</info>  <strong>$data</strong>       The <strong>$data</strong> being encoded. Can be any type except a <info>resource</info>.
  <info>int</info>    <strong>$encoding</strong>   Output character encoding chosen from <info>YAML_ANY_ENCODING</info>, <info>YAML_UTF8_ENCODING</info>,
                     <info>YAML_UTF16LE_ENCODING</info>, <info>YAML_UTF16BE_ENCODING</info>.
  <info>int</info>    <strong>$linebreak</strong>  Output linebreak style chosen from <info>YAML_ANY_BREAK</info>, <info>YAML_CR_BREAK</info>,
                     <info>YAML_LN_BREAK</info>, <info>YAML_CRLN_BREAK</info>.
  <info>array</info>  <strong>$callbacks</strong>  Content handlers for emitting YAML nodes. Associative <info>array</info> of classname =&gt;
                     <info>callable</info> mappings. See emit callbacks for more details.

<comment>Return:</comment>
  <info>string</info>  Returns a YAML encoded <info>string</info> on success.

<comment>See Also:</comment>
   * <strong>yaml_emit_file()</strong>
   * <strong>yaml_parse()</strong>


id: yaml_emit_file
type: function
doc:
<comment>Description:</comment>
  Send the YAML representation of a value to a file
  
  Generate a YAML representation of the provided <strong>$data</strong> in the <strong>$filename</strong>.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>   Path to the file.
  <info>mixed</info>   <strong>$data</strong>       The <strong>$data</strong> being encoded. Can be any type except a <info>resource</info>.
  <info>int</info>     <strong>$encoding</strong>   Output character encoding chosen from <info>YAML_ANY_ENCODING</info>, <info>YAML_UTF8_ENCODING</info>,
                      <info>YAML_UTF16LE_ENCODING</info>, <info>YAML_UTF16BE_ENCODING</info>.
  <info>int</info>     <strong>$linebreak</strong>  Output linebreak style chosen from <info>YAML_ANY_BREAK</info>, <info>YAML_CR_BREAK</info>,
                      <info>YAML_LN_BREAK</info>, <info>YAML_CRLN_BREAK</info>.
  <info>array</info>   <strong>$callbacks</strong>  Content handlers for emitting YAML nodes. Associative <info>array</info> of classname =&gt;
                      <info>callable</info> mappings. See emit callbacks for more details.

<comment>Return:</comment>
  <info>bool</info>  Returns <info>true</info> on success.

<comment>See Also:</comment>
   * <strong>yaml_emit()</strong>
   * <strong>yaml_parse()</strong>


id: yaml_parse
type: function
doc:
<comment>Description:</comment>
  Parse a YAML stream
  
  Convert all or part of a YAML document stream to a PHP variable.

<comment>Param:</comment>
  <info>string</info>  <strong>$input</strong>      The <info>string</info> to parse as a YAML document stream.
  <info>int</info>     <strong>$pos</strong>        Document to extract from stream (<return>-1</return> for all documents, <return>0</return> for first document,
                      ...).
  <info>int</info>     <strong>$ndocs</strong>      If <strong>$ndocs</strong> is provided, then it is filled with the number of documents found in
                      stream.
  <info>array</info>   <strong>$callbacks</strong>  Content handlers for YAML nodes. Associative <info>array</info> of YAML tag =&gt; <info>callable</info>
                      mappings. See parse callbacks for more details.

<comment>Return:</comment>
  <info>mixed</info>  Returns the value encoded in <strong>$input</strong> in appropriate PHP type 或者在失败时返回 <info>false</info>. If <strong>$pos</strong>
         is <return>-1</return> an <info>array</info> will be returned with one entry for each document found in the stream.

<comment>See Also:</comment>
   * <strong>yaml_parse_file()</strong>
   * <strong>yaml_parse_url()</strong>
   * <strong>yaml_emit()</strong>


id: yaml_parse_file
type: function
doc:
<comment>Description:</comment>
  Parse a YAML stream from a file
  
  Convert all or part of a YAML document stream read from a file to a PHP variable.

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>   Path to the file.
  <info>int</info>     <strong>$pos</strong>        Document to extract from stream (<return>-1</return> for all documents, <return>0</return> for first document,
                      ...).
  <info>int</info>     <strong>$ndocs</strong>      If <strong>$ndocs</strong> is provided, then it is filled with the number of documents found in
                      stream.
  <info>array</info>   <strong>$callbacks</strong>  Content handlers for YAML nodes. Associative <info>array</info> of YAML tag =&gt; <info>callable</info>
                      mappings. See parse callbacks for more details.

<comment>Return:</comment>
  <info>mixed</info>  Returns the value encoded in <strong>$input</strong> in appropriate PHP type 或者在失败时返回 <info>false</info>. If <strong>$pos</strong>
         is <return>-1</return> an <info>array</info> will be returned with one entry for each document found in the stream.

<comment>See Also:</comment>
   * <strong>yaml_parse()</strong>
   * <strong>yaml_parse_url()</strong>
   * <strong>yaml_emit()</strong>


id: yaml_parse_url
type: function
doc:
<comment>Description:</comment>
  Parse a Yaml stream from a URL
  
  Convert all or part of a YAML document stream read from a URL to a PHP variable.

<comment>Param:</comment>
  <info>string</info>  <strong>$url</strong>        <strong>$url</strong> should be of the form "scheme://...". PHP will search for a protocol
                      handler (also known as a wrapper) for that scheme. If no wrappers for that
                      protocol are registered, PHP will emit a notice to help you track potential
                      problems in your script and then continue as though filename specifies a
                      regular file.
  <info>int</info>     <strong>$pos</strong>        Document to extract from stream (<return>-1</return> for all documents, <return>0</return> for first document,
                      ...).
  <info>int</info>     <strong>$ndocs</strong>      If <strong>$ndocs</strong> is provided, then it is filled with the number of documents found in
                      stream.
  <info>array</info>   <strong>$callbacks</strong>  Content handlers for YAML nodes. Associative <info>array</info> of YAML tag =&gt; <info>callable</info>
                      mappings. See parse callbacks for more

<comment>Return:</comment>
  <info>mixed</info>  Returns the value encoded in <strong>$input</strong> in appropriate PHP type 或者在失败时返回 <info>false</info>. If <strong>$pos</strong>
         is <return>-1</return> an <info>array</info> will be returned with one entry for each document found in the stream.

<comment>See Also:</comment>
   * <strong>yaml_parse()</strong>
   * <strong>yaml_parse_file()</strong>
   * <strong>yaml_emit()</strong>


id: yaz_addinfo
type: function
doc:
<comment>Description:</comment>
  Returns additional error information
  
  Returns additional error information for the last request on the server.
  
  With some servers, this function may return the same string as  <strong>yaz_error()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>  The connection resource returned by <strong>yaz_connect()</strong>.

<comment>Return:</comment>
  <info>string</info>  A string containing additional error information or an empty string if the last operation
          was successful or if no additional information was provided by the server.

<comment>See Also:</comment>
   * <strong>yaz_error()</strong>
   * <strong>yaz_errno()</strong>


id: yaz_ccl_conf
type: function
doc:
<comment>Description:</comment>
  Configure CCL parser
  
  This function configures the CCL query parser for a server with  definitions of access points (CCL
  qualifiers) and their mapping to RPN.
  
  To map a specific CCL query to RPN afterwards call the  <strong>yaz_ccl_parse()</strong> function.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>      The connection resource returned by <strong>yaz_connect()</strong>.
  <info>array</info>     <strong>$config</strong>  An array of configuration. Each key of the array is the name of a CCL field and
                     the corresponding value holds a string that specifies a  mapping to RPN.
                     
                     The mapping is a sequence of attribute-type, attribute-value pairs.
                     Attribute-type and attribute-value is separated by an equal sign  (<return>=</return>). Each
                     pair is separated by white space.
                     
                     Additional information can be found on the CCL page.

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

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


id: yaz_ccl_parse
type: function
doc:
<comment>Description:</comment>
  Invoke CCL Parser
  
  This function invokes a CCL parser. It converts a given CCL FIND query to an RPN query which may
  be passed to the <strong>yaz_search()</strong>  function to perform a search.
  
  To define a set of valid CCL fields call <strong>yaz_ccl_conf()</strong>  prior to this function.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>      The connection resource returned by <strong>yaz_connect()</strong>.
  <info>string</info>    <strong>$query</strong>   The CCL FIND query.
  <info>array</info>     <strong>$result</strong>  If the function was executed successfully, this will be an array  containing
                     the valid RPN query under the key <return>rpn</return>.
                     
                     Upon failure, three indexes are set in this array to indicate the cause of
                     failure:  <return>errorcode</return> - the CCL error code (integer) <return>errorstring</return> - the CCL error
                     string <return>errorpos</return> - approximate position in query of failure (integer is
                     character position)
                     
                     <return>errorcode</return> - the CCL error code (integer)
                     
                     <return>errorstring</return> - the CCL error string
                     
                     <return>errorpos</return> - approximate position in query of failure (integer is character
                     position)

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


id: yaz_close
type: function
doc:
<comment>Description:</comment>
  Close YAZ connection
  
  Closes the connection given by parameter <strong>$id</strong>.
  
  This function will only close a non-persistent connection opened by setting the <return>persistent</return> option
  to <info>false</info> with <strong>yaz_connect()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>  The connection resource returned by <strong>yaz_connect()</strong>.

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

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


id: yaz_connect
type: function
doc:
<comment>Description:</comment>
  Prepares for a connection to a Z39.50 server
    
  
  This function returns a connection resource on success, zero on failure.
  
  <strong>yaz_connect()</strong> prepares for a connection to a Z39.50 server.  This function is non-blocking and
  does not attempt to establish a connection  - it merely prepares a connect to be performed later
  when <strong>yaz_wait()</strong> is called.
  
  The YAZ proxy is a freely available Z39.50 proxy.

<comment>Param:</comment>
  <info>string</info>  <strong>$zurl</strong>     A string that takes the form <return>host[:port][/database]</return>. If port is omitted, port
                    210 is used. If database is omitted  <return>Default</return> is used.
  <info>mixed</info>   <strong>$options</strong>  If given as a string, it is treated as the Z39.50 V2 authentication  string
                    (OpenAuth).
                    
                    If given as an array, the contents of the array serves as options. user Username
                    for authentication. group Group for authentication. password Password for
                    authentication. cookie Cookie for session (YAZ proxy). proxy Proxy for
                    connection (YAZ proxy). persistent A boolean. If <info>true</info> the connection is
                    persistent; If <info>false</info> the connection is not persistent. By default connections
                    are persistent.  If you open a persistent connection, you won't be able to close
                    it later with <strong>yaz_close()</strong>. piggyback A boolean. If <info>true</info> piggyback is enabled for
                    searches; If <info>false</info> piggyback is disabled. By default piggyback is enabled.
                    Enabling piggyback is more efficient and usually saves a  network-round-trip for
                    first time fetches of records. However, a  few Z39.50 servers do not support
                    piggyback or they ignore element set names. For those, piggyback should be
                    disabled. charset A string that specifies character set to be used in Z39.50
                    language and character set negotiation. Use strings such as: <return>ISO-8859-1</return>, <return>UTF-8</return>,
                    <return>UTF-16</return>.  Most Z39.50 servers do not support this feature (and thus, this is
                    ignored). Many servers use the ISO-8859-1 encoding for queries and messages.
                    MARC21/USMARC records are not affected by this setting. preferredMessageSize An
                    integer that specifies the maximum byte size of all records to be returned by a
                    target during retrieval. See the Z39.50 standard for more information.  This
                    option is supported in PECL YAZ 1.0.5 or later. maximumRecordSize An integer
                    that specifies the maximum byte size of a single record to be returned by a
                    target during retrieval. This entity is referred to as Exceptional-record-size
                    in the Z39.50 standard.  This option is supported in PECL YAZ 1.0.5 or later.
                    
                    Username for authentication.
                    
                    Group for authentication.
                    
                    Password for authentication.
                    
                    Cookie for session (YAZ proxy).
                    
                    Proxy for connection (YAZ proxy).
                    
                    A boolean. If <info>true</info> the connection is persistent; If <info>false</info> the connection is not
                    persistent. By default connections are persistent.
                    
                    If you open a persistent connection, you won't be able to close  it later with
                    <strong>yaz_close()</strong>.
                    
                    A boolean. If <info>true</info> piggyback is enabled for searches; If <info>false</info> piggyback is
                    disabled. By default piggyback is enabled.
                    
                    Enabling piggyback is more efficient and usually saves a  network-round-trip for
                    first time fetches of records. However, a  few Z39.50 servers do not support
                    piggyback or they ignore element set names. For those, piggyback should be
                    disabled.
                    
                    A string that specifies character set to be used in Z39.50  language and
                    character set negotiation. Use strings such as: <return>ISO-8859-1</return>, <return>UTF-8</return>,  <return>UTF-16</return>.
                    
                    Most Z39.50 servers do not support this feature (and thus, this is ignored).
                    Many servers use the ISO-8859-1 encoding for queries and messages. MARC21/USMARC
                    records are not affected by this setting.
                    
                    An integer that specifies the maximum byte size of all records to be returned by
                    a target during retrieval. See the Z39.50 standard for more information.
                    
                    This option is supported in PECL YAZ 1.0.5 or later.
                    
                    An integer that specifies the maximum byte size of a single record to be
                    returned by a target during retrieval. This entity is referred to as
                    Exceptional-record-size in the Z39.50 standard.
                    
                    This option is supported in PECL YAZ 1.0.5 or later.

<comment>Return:</comment>
  <info>mixed</info>  A connection resource on success, <info>false</info> on error.

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


id: yaz_database
type: function
doc:
<comment>Description:</comment>
  Specifies the databases within a session
    
  
  This function allows you to change databases within a session by  specifying one or more databases
  to be used in search, retrieval, etc. - overriding databases specified in call to  <strong>yaz_connect()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>         The connection resource returned by <strong>yaz_connect()</strong>.
  <info>string</info>    <strong>$databases</strong>  A string containing one or more databases. Multiple databases are  separated
                        by a plus sign <return>+</return>.

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


id: yaz_element
type: function
doc:
<comment>Description:</comment>
  Specifies Element-Set Name for retrieval
    
  
  This function sets the element set name for retrieval.
  
  Call this function before <strong>yaz_search()</strong> or <strong>yaz_present()</strong> to specify the element set name for
  records to be retrieved.
  
  If this function appears to have no effect, see the description of the  <return>piggybacking</return> option in
  <strong>yaz_connect()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>          The connection resource returned by <strong>yaz_connect()</strong>.
  <info>string</info>    <strong>$elementset</strong>  Most servers support <return>F</return> (for full records) and <return>B</return> (for brief records).

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


id: yaz_errno
type: function
doc:
<comment>Description:</comment>
  Returns error number
  
  Returns an error number for the server (last request) identified by <strong>$id</strong>.
  
  <strong>yaz_errno()</strong> should be called after network activity for each server - (after <strong>yaz_wait()</strong> returns)
  to determine the success or failure of the last operation (e.g. search).

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>  The connection resource returned by <strong>yaz_connect()</strong>.

<comment>Return:</comment>
  <info>int</info>  Returns an error code. The error code is either a Z39.50 diagnostic code (usually a Bib-1
       diagnostic) or a client side error code which is  generated by PHP/YAZ itself, such as
       "Connect failed", "Init Rejected",  etc.

<comment>See Also:</comment>
   * <strong>yaz_error()</strong>
   * <strong>yaz_addinfo()</strong>


id: yaz_error
type: function
doc:
<comment>Description:</comment>
  Returns error description
  
  <strong>yaz_error()</strong> returns an English text message corresponding to the last error number as returned by
  <strong>yaz_errno()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>  The connection resource returned by <strong>yaz_connect()</strong>.

<comment>Return:</comment>
  <info>string</info>  Returns an error text message for server (last request), identified by parameter <strong>$id</strong>. An
          empty string is returned if the last operation was successful.

<comment>See Also:</comment>
   * <strong>yaz_errno()</strong>
   * <strong>yaz_addinfo()</strong>


id: yaz_es
type: function
doc:
<comment>Description:</comment>
  Prepares for an Extended Service Request
    
  
  This function prepares for an Extended Service Request. Extended Services is family of various
  Z39.50 facilities, such as Record Update, Item Order, Database administration etc.
  
  Many Z39.50 Servers do not support Extended Services.
  
  The <strong>yaz_es()</strong> creates an Extended Service Request packages and puts it into a queue of operations.
  Use <strong>yaz_wait()</strong> to send the request(s) to the server. After completion of <strong>yaz_wait()</strong> the result of
  the Extended Service operation should be expected with a call to <strong>yaz_es_result()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>    The connection resource returned by <strong>yaz_connect()</strong>.
  <info>string</info>    <strong>$type</strong>  A string which represents the type of the Extended Service:  <return>itemorder</return> (Item
                   Order), <return>create</return> (Create Database), <return>drop</return> (Drop Database), <return>commit</return> (Commit
                   Operation), <return>update</return> (Update Record), <return>xmlupdate</return> (XML Update). Each type is
                   specified in the following section.
  <info>array</info>     <strong>$args</strong>  An array with extended service options plus package specific options. The options
                   are identical to those offered in the C API of ZOOM C. Refer to the ZOOM Extended
                   Services.

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

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


id: yaz_es_result
type: function
doc:
<comment>Description:</comment>
  Inspects Extended Services Result
    
  
  This function inspects the last returned Extended Service result from a server. An Extended
  Service is  initiated by either <strong>yaz_item_order()</strong> or <strong>yaz_es()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>  The connection resource returned by <strong>yaz_connect()</strong>.

<comment>Return:</comment>
  <info>array</info>  Returns array with element <return>targetReference</return> for the reference for the extended service
         operation (generated and returned from the server).

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


id: yaz_get_option
type: function
doc:
<comment>Description:</comment>
  Returns value of option for connection
  
  Returns the value of the option specified with <strong>$name</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>    The connection resource returned by <strong>yaz_connect()</strong>.
  <info>string</info>    <strong>$name</strong>  The option name.

<comment>Return:</comment>
  <info>string</info>  Returns the value of the specified option or an empty string if the option wasn't set.

<comment>See Also:</comment>
   * 
     The description of <strong>yaz_set_option()</strong> for available 
     options
    


id: yaz_hits
type: function
doc:
<comment>Description:</comment>
  Returns number of hits for last search
  
  <strong>yaz_hits()</strong> returns the number of hits for the last search.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>            The connection resource returned by <strong>yaz_connect()</strong>.
  <info>array</info>     <strong>$searchresult</strong>  Result array for detailed search result information.

<comment>Return:</comment>
  <info>int</info>  Returns the number of hits for the last search or 0 if no search was  performed.
       
       The search result array (if supplied) holds information that is returned by a Z39.50 server
       in the SearchResult-1 format part of a search response. The SearchResult-1 format can be used
       to obtain information about hit counts for various parts of the query (subquery). In
       particular, it is possible to obtain hit counts for the individual search terms in a query.
       Information for first subquery is in $array[0], second subquery in $array[1], and so forth.
       
       The SearchResult facility requires PECL YAZ 1.0.5 or later and YAZ 2.1.9 or later.
       
       Very few Z39.50 implementations support the SearchResult facility.


id: yaz_itemorder
type: function
doc:
<comment>Description:</comment>
  Prepares for Z39.50 Item Order with an ILL-Request package
    
  
  This function prepares for an Extended Services request using the Profile for the Use of Z39.50
  Item Order Extended Service to Transport ILL (Profile/1). See this and the specification.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>    The connection resource returned by <strong>yaz_connect()</strong>.
  <info>array</info>     <strong>$args</strong>  Must be an associative array with information about the Item Order  request to be
                   sent. The key of the hash is the name of the  corresponding ASN.1 tag path. For
                   example, the ISBN below the Item-ID has the key item-id,ISBN.
                   
                   The ILL-Request parameters are:
                   
                   There are also a few parameters that are part of the Extended Services Request
                   package and the ItemOrder package:

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


id: yaz_present
type: function
doc:
<comment>Description:</comment>
  Prepares for retrieval (Z39.50 present)
    
  
  This function prepares for retrieval of records after a successful search.
  
  The <strong>yaz_range()</strong> function should be called prior to this function to specify the range of records
  to be retrieved.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>  The connection resource returned by <strong>yaz_connect()</strong>.

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


id: yaz_range
type: function
doc:
<comment>Description:</comment>
  Specifies a range of records to retrieve
    
  
  Specifies a range of records to retrieve.
  
  This function should be called before <strong>yaz_search()</strong> or  <strong>yaz_present()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>      The connection resource returned by <strong>yaz_connect()</strong>.
  <info>int</info>       <strong>$start</strong>   Specifies the position of the first record to be retrieved. The  records
                     numbers goes from 1 to <strong>yaz_hits()</strong>.
  <info>int</info>       <strong>$number</strong>  Specifies the number of records to be retrieved.

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


id: yaz_record
type: function
doc:
<comment>Description:</comment>
  Returns a record
  
  The <strong>yaz_record()</strong> function inspects a record in the current result set at the position specified by
  parameter <strong>$pos</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>      The connection resource returned by <strong>yaz_connect()</strong>.
  <info>int</info>       <strong>$pos</strong>     The record position. Records positions in a result set are numbered 1, 2, ...
                     $hits where $hits is the count returned by <strong>yaz_hits()</strong>.
  <info>string</info>    <strong>$type</strong>    The <strong>$type</strong> specifies the form of the returned record.
                     
                     It is the application which is responsible for actually ensuring that the
                     records are returned from the Z39.50/SRW server in the proper format. The type
                     given only specifies a conversion to take place on the client side (in
                     PHP/YAZ).
                     
                     Besides conversion of the transfer record to a string/array, PHP/YAZ it is also
                     possible to perform a character set conversion of the record. Especially for
                     USMARC/MARC21 that is recommended since these are typically returned in the
                     character set MARC-8 that is not supported by browsers, etc. To specify a
                     conversion, add <return>; charset=</return>from<return>, </return>to where from is the original character set  of
                     the record and to is the resulting character set (as seen by PHP).
                     
                     The record is returned as a string for simple display. In this mode, all MARC
                     records are converted to a line-by-line format since ISO2709 is hardly
                     readable. XML records and SUTRS are returned in their original format. GRS-1
                     are returned in a (ugly) line-by-line format.
                     
                     This format is suitable if records are to be displayed in a quick way - for
                     debugging - or because it is not feasible to perform proper display.
                     
                     The record is returned as an XML string if possible. In this mode, all MARC
                     records are converted to  MARCXML. XML records and SUTRS are returned in their
                     original format. GRS-1 is not supported.
                     
                     This format is similar to <strong>$string</strong> except that MARC records are converted to
                     MARCXML
                     
                     This format is suitable if records are processed by an XML parser or XSLT
                     processor afterwards.
                     
                     The record is returned as a string in its original form. This type is suitable
                     for MARC, XML and SUTRS. It does not work for GRS-1.
                     
                     MARC records are returned as a ISO2709 string. XML and SUTRS are returned as
                     strings.
                     
                     The syntax of the record is returned as a string, i.e. <return>USmarc</return>, <return>GRS-1</return>, <return>XML</return>, etc.
                     
                     The name of database associated with record at the position is returned as a
                     string.
                     
                     The record is returned as an array that reflects the GRS-1 structure. This type
                     is suitable for MARC and GRS-1. XML, SUTRS are not supported and if the actual
                     record is XML or SUTRS an empty string will be returned.
                     
                     The array returned consists of a list corresponding to each leaf/internal node
                     of GRS-1. Each list item consists a sub list with first element path and data
                     (if data is available).
                     
                     The path which is a string holds a list of each tree component (of the
                     structured GRS-1 record) from root to leaf. Each component is a tag type, tag
                     value pair of the form <return>(</return>type<return>,</return> value
                     
                     String tags normally has a corresponding tag type 3. MARC can also be returned
                     as an array (they are converted to GRS-1 internally).
  <info></info>          <strong>$string</strong>  The record is returned as an XML string if possible. In this mode, all MARC
                     records are converted to  MARCXML. XML records and SUTRS are returned in their
                     original format. GRS-1 is not supported.
                     
                     This format is similar to <strong>$string</strong> except that MARC records are converted to
                     MARCXML
                     
                     This format is suitable if records are processed by an XML parser or XSLT
                     processor afterwards.

<comment>Return:</comment>
  <info>string</info>  Returns the record at position <strong>$pos</strong> or an empty string if no record exists at the given
          position.
          
          If no database record exists at the given position an empty string is  returned.


id: yaz_scan
type: function
doc:
<comment>Description:</comment>
  Prepares for a scan
  
  This function prepares for a Z39.50 Scan Request on the specified  connection.
  
  To actually transfer the Scan Request to the server and receive the Scan Response, <strong>yaz_wait()</strong> must
  be called. Upon completion of <strong>yaz_wait()</strong> call <strong>yaz_error()</strong> and <strong>yaz_scan_result()</strong> to handle the
  response.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>         The connection resource returned by <strong>yaz_connect()</strong>.
  <info>string</info>    <strong>$type</strong>       Currently only type <return>rpn</return> is supported.
  <info>string</info>    <strong>$startterm</strong>  Starting term point for the scan.
                        
                        The form in which the starting term is specified is given by parameter
                        <strong>$type</strong>.
                        
                        The syntax this parameter is similar to the RPN query as described in
                        <strong>yaz_search()</strong>. It consists of zero or more  <return>@attr</return>-operator specifications,
                        then followed by  exactly one token.
  <info>array</info>     <strong>$flags</strong>      This optional parameter specifies additional information to control  the
                        behaviour of the scan request. Three indexes are currently read  from the
                        flags array: <return>number</return> (number of terms requested), <return>position</return> (preferred
                        position of term) and <return>stepSize</return> (preferred step size).

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


id: yaz_scan_result
type: function
doc:
<comment>Description:</comment>
  Returns Scan Response result
  
  <strong>yaz_scan_result()</strong> returns terms and associated information as received from the server in the last
  performed <strong>yaz_scan()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>      The connection resource returned by <strong>yaz_connect()</strong>.
  <info>array</info>     <strong>$result</strong>  If given, this array will be modified to hold additional information  taken
                     from the Scan Response: <return>number</return> - Number of entries returned <return>stepsize</return> - Step
                     size <return>position</return> - Position of term <return>status</return> - Scan status
                     
                     <return>number</return> - Number of entries returned
                     
                     <return>stepsize</return> - Step size
                     
                     <return>position</return> - Position of term
                     
                     <return>status</return> - Scan status

<comment>Return:</comment>
  <info>array</info>  Returns an array (0..n-1) where n is the number of terms returned. Each  value is a pair
         where the first item is the term, and the second item is  the result-count.


id: yaz_schema
type: function
doc:
<comment>Description:</comment>
  Specifies schema for retrieval
    
  
  <strong>yaz_schema()</strong> specifies the schema for retrieval.
  
  This function should be called before  <strong>yaz_search()</strong> or <strong>yaz_present()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>      The connection resource returned by <strong>yaz_connect()</strong>.
  <info>string</info>    <strong>$schema</strong>  Must be specified as an OID (Object Identifier) in a raw dot-notation  (like
                     <return>1.2.840.10003.13.4</return>) or as one of the known  registered schemas: <return>GILS-schema</return>,
                     <return>Holdings</return>, <return>Zthes</return>, ...

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


id: yaz_search
type: function
doc:
<comment>Description:</comment>
  Prepares for a search
  
  <strong>yaz_search()</strong> prepares for a search on the given  connection.
  
  Like <strong>yaz_connect()</strong> this function is non-blocking and only prepares for a search to be executed
  later when  <strong>yaz_wait()</strong> is called.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>     The connection resource returned by <strong>yaz_connect()</strong>.
  <info>string</info>    <strong>$type</strong>   This parameter represents the query type - only <return>"rpn"</return> is supported now in which
                    case the third argument specifies a Type-1  query in prefix query notation.
  <info>string</info>    <strong>$query</strong>  The RPN query is a textual representation of the Type-1 query as defined by the
                    Z39.50 standard. However, in the text representation as used by YAZ a prefix
                    notation is used, that is the operator precedes the operands. The query string
                    is a sequence of tokens where white space is ignored unless surrounded by double
                    quotes. Tokens beginning with an at-character (<return>@</return>) are considered operators,
                    otherwise they are treated as search terms.
                    
                    You can find information about attributes at the  Z39.50 Maintenance Agency
                    site.
                    
                    If you would like to use a more friendly notation, use the CCL parser -
                    functions <strong>yaz_ccl_conf()</strong> and  <strong>yaz_ccl_parse()</strong>.

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


id: yaz_set_option
type: function
doc:
<comment>Description:</comment>
  Sets one or more options for connection
  
  Sets one or more options on the given connection.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>     The connection resource returned by <strong>yaz_connect()</strong>.
  <info>string</info>    <strong>$name</strong>   May be either a string or an array.
                    
                    If given as a string, this will be the name of the option to set. You'll need to
                    give it's <strong>$value</strong>.
                    
                    If given as an array, this will be an associative array (option name  =&gt;
                    option value).
  <info>string</info>    <strong>$value</strong>  The new value of the option. Use this only if the previous argument is a string.

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


id: yaz_sort
type: function
doc:
<comment>Description:</comment>
  Sets sorting criteria
  
  This function sets sorting criteria and enables Z39.50 Sort.
  
  Call this function before <strong>yaz_search()</strong>. Using this function alone does not have any effect. When
  used in conjunction with <strong>yaz_search()</strong>, a Z39.50 Sort will be sent after a search response has been
  received and before any records are retrieved with Z39.50 Present (<strong>yaz_present()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>        The connection resource returned by <strong>yaz_connect()</strong>.
  <info>string</info>    <strong>$criteria</strong>  A string that takes the form field1 flags1 field2  flags2 where field1
                       specifies the primary attributes for sort, field2 seconds, etc..
                       
                       The field specifies either a numerical attribute combinations consisting of
                       type=value pairs separated by comma (e.g. <return>1=4,2=1</return>) ; or the field may specify
                       a plain string criteria (e.g.  <return>title</return>. The flags is a sequence of the
                       following  characters which may not be separated by any white space.
                       
                       Sort Flags<return>a</return> Sort ascending <return>d</return> Sort descending <return>i</return> Case insensitive sorting <return>s</return>
                       Case sensitive sorting
                       
                       Sort ascending
                       
                       Sort descending
                       
                       Case insensitive sorting
                       
                       Case sensitive sorting

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


id: yaz_syntax
type: function
doc:
<comment>Description:</comment>
  Specifies the preferred record syntax for retrieval
    
  
  <strong>yaz_syntax()</strong> specifies the preferred record syntax for retrieval
  
  This function should be called before <strong>yaz_search()</strong> or  <strong>yaz_present()</strong>.

<comment>Param:</comment>
  <info>resource</info>  <strong>$id</strong>      The connection resource returned by <strong>yaz_connect()</strong>.
  <info>string</info>    <strong>$syntax</strong>  The syntax must be specified as an OID (Object Identifier) in a raw
                     dot-notation (like <return>1.2.840.10003.5.10</return>) or as one of the known registered record
                     syntaxes (sutrs, usmarc, grs1, xml, etc.).

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


id: yaz_wait
type: function
doc:
<comment>Description:</comment>
  Wait for Z39.50 requests to complete
  
  This function carries out networked (blocked) activity for outstanding requests which have been
  prepared by the functions  <strong>yaz_connect()</strong>, <strong>yaz_search()</strong>,  <strong>yaz_present()</strong>, <strong>yaz_scan()</strong> and
  <strong>yaz_itemorder()</strong>.
  
  <strong>yaz_wait()</strong> returns when all servers have either completed all requests or aborted (in case of
  errors).

<comment>Param:</comment>
  <info>array</info>  <strong>$options</strong>  An associative array of options: <return>timeout</return> Sets timeout in seconds. If a server has
                   not responded within the timeout it is considered dead and <strong>yaz_wait()</strong> returns.
                   The default value for timeout is 15 seconds. <return>event</return> A boolean.
                   
                   Sets timeout in seconds. If a server has not responded within the timeout it is
                   considered dead and <strong>yaz_wait()</strong> returns. The default value for timeout is 15
                   seconds.
                   
                   A boolean.

<comment>Return:</comment>
  <info>mixed</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。 In event mode, returns resource  或者在失败时返
         回 <info>false</info>.


id: zend_thread_id
type: function
doc:
<comment>Description:</comment>
  返回当前线程的唯一识别符
  
  该函数返回当前线程的唯一识别符。

<comment>Return:</comment>
  <info>int</info>  以整型（integer）返回线程的 ID。


id: zend_version
type: function
doc:
<comment>Description:</comment>
  获取当前 Zend 引擎的版本
  
  获取当前运行的 Zend 引擎的版本字符串。

<comment>Return:</comment>
  <info>string</info>  获取 Zend 引擎的版本数字的字符串。

<comment>See Also:</comment>
   * <strong>phpinfo()</strong>
   * <strong>phpcredits()</strong>
   * <strong>phpversion()</strong>


id: zip_close
type: function
doc:
<comment>Description:</comment>
  关闭一个ZIP档案文件
  
  关闭一个指定的ZIP档案文件。

<comment>Param:</comment>
  <info>resource</info>  <strong>$zip</strong>  一个由<strong>zip_open()</strong>打开的ZIP文件资源。

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

<comment>See Also:</comment>
   * <strong>zip_open()</strong>
   * <strong>zip_read()</strong>


id: zip_entry_close
type: function
doc:
<comment>Description:</comment>
  关闭目录项
  
  关闭指定的目录项。

<comment>Param:</comment>
  <info>resource</info>  <strong>$zip_entry</strong>  一个由<strong>zip_entry_open()</strong>打开的项目。

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

<comment>See Also:</comment>
   * <strong>zip_entry_open()</strong>
   * <strong>zip_entry_read()</strong>


id: zip_entry_compressedsize
type: function
doc:
<comment>Description:</comment>
  检索目录项压缩过后的大小
  
  返回指定目录项压缩过后的大小。

<comment>Param:</comment>
  <info>resource</info>  <strong>$zip_entry</strong>  由函数<strong>zip_read()</strong> 返回的目录项。

<comment>Return:</comment>
  <info>int|false</info>  压缩后的大小， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>zip_open()</strong>
   * <strong>zip_read()</strong>


id: zip_entry_compressionmethod
type: function
doc:
<comment>Description:</comment>
  检索目录实体的压缩方法
  
  返回由函数<strong>$zip_entry</strong>确定的目录实体的压缩方法。

<comment>Param:</comment>
  <info>resource</info>  <strong>$zip_entry</strong>  由函数<strong>zip_read()</strong> 返回的目录实体。

<comment>Return:</comment>
  <info>string|false</info>  压缩方法， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>zip_open()</strong>
   * <strong>zip_read()</strong>


id: zip_entry_filesize
type: function
doc:
<comment>Description:</comment>
  检索目录实体的实际大小
  
  返回指定目录实体的实际大小。

<comment>Param:</comment>
  <info>resource</info>  <strong>$zip_entry</strong>  由函数<strong>zip_read()</strong> 返回的目录实体。

<comment>Return:</comment>
  <info>int|false</info>  返回该目录实体的大小， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>zip_open()</strong>
   * <strong>zip_read()</strong>


id: zip_entry_name
type: function
doc:
<comment>Description:</comment>
  检索目录项的名称
  
  返回指定目录项的名称。

<comment>Param:</comment>
  <info>resource</info>  <strong>$zip_entry</strong>  由函数<strong>zip_read()</strong> 返回的目录项。

<comment>Return:</comment>
  <info>string|false</info>  目录项的名称， 或者在失败时返回 <info>false</info>。

<comment>See Also:</comment>
   * <strong>zip_open()</strong>
   * <strong>zip_read()</strong>


id: zip_entry_open
type: function
doc:
<comment>Description:</comment>
  打开用于读取的目录实体
  
  打开ZIP文件中的目录实体以便后续读取。

<comment>Param:</comment>
  <info>resource</info>  <strong>$zip_dp</strong>     由函数<strong>zip_open()</strong>返回的有效的资源句柄。
  <info>resource</info>  <strong>$zip_entry</strong>  由函数<strong>zip_read()</strong>返回的目录实体。
  <info>string</info>    <strong>$mode</strong>       任何在<strong>fopen()</strong>处理文档中指定的模式。
                        
                        由于ZIP在PHP中只支持读取模式，所以<strong>$mode</strong>  实际上总是被设置为<return>"rb"</return>(其他模式会被
                        忽略)。

<comment>Return:</comment>
  <info>bool</info>  成功时返回 <info>true</info>， 或者在失败时返回 <info>false</info>。
        
        与<strong>fopen()</strong>和其他类似的方法不同，<strong>zip_entry_open()</strong> 的返回值只用于标示该操作结果，不需要读取或关
        闭该目录实体。

<comment>See Also:</comment>
   * <strong>zip_entry_close()</strong>
   * <strong>zip_entry_read()</strong>


id: zip_entry_read
type: function
doc:
<comment>Description:</comment>
  读取一个打开了的压缩目录实体
  
  读取一个打开了的压缩目录实体。

<comment>Param:</comment>
  <info>resource</info>  <strong>$zip_entry</strong>  由函数<strong>zip_read()</strong> 返回的目录实体。
  <info>int</info>       <strong>$len</strong>        需要返回的字节数。
                        
                        这字节数应该是你所要读取的未压缩的字节数。

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

<comment>See Also:</comment>
   * <strong>zip_entry_open()</strong>
   * <strong>zip_entry_close()</strong>
   * <strong>zip_entry_filesize()</strong>


id: zip_open
type: function
doc:
<comment>Description:</comment>
  打开 ZIP 文件归档
  
  打开一个新的ZIP归档文件进行读取。

<comment>Param:</comment>
  <info>string</info>  <strong>$filename</strong>  待打开ZIP归档的文件名。

<comment>Return:</comment>
  <info>resource|int|false</info>  成功的时候返回资源句柄供 <strong>zip_read()</strong> 和 <strong>zip_close()</strong> 后续使用；如果 <strong>$filename</strong> 文
                      件不存在或者出现其他错误，则会返回 <info>false</info> 或相应的错误码。

<comment>See Also:</comment>
   * <strong>zip_read()</strong>
   * <strong>zip_close()</strong>


id: zip_read
type: function
doc:
<comment>Description:</comment>
  读取 ZIP 文件归档中下一项
  
  读取 ZIP 文件归档中下一项。

<comment>Param:</comment>
  <info>resource</info>  <strong>$zip</strong>  一个ZIP压缩文件,该ZIP归档文件之前应由函数 <strong>zip_open()</strong> 打开。

<comment>Return:</comment>
  <info>resource|false</info>  成功的时候返回该当前实体资源供<return>zip_entry_...</return> 系列函数后续使用;  如果没有更多的读取
                  项，则会返回 <info>false</info> 如果遇到错误则会返回相应的错误码。

<comment>See Also:</comment>
   * <strong>zip_open()</strong>
   * <strong>zip_close()</strong>
   * <strong>zip_entry_open()</strong>
   * <strong>zip_entry_read()</strong>


id: zlib_decode
type: function
doc:
<comment>Description:</comment>
  Uncompress any raw/gzip/zlib encoded data
  
  Uncompress any raw/gzip/zlib encoded data.
  
  本函数还未编写文档，仅有参数列表。

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>        
  <info>int</info>     <strong>$max_length</strong>  

<comment>Return:</comment>
  <info>string|false</info>  Returns the uncompressed data,  或者在失败时返回 <info>false</info>.

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


id: zlib_encode
type: function
doc:
<comment>Description:</comment>
  Compress data with the specified encoding
  
  Compress data with the specified encoding.
  
  本函数还未编写文档，仅有参数列表。

<comment>Param:</comment>
  <info>string</info>  <strong>$data</strong>      The data to compress.
  <info>int</info>     <strong>$encoding</strong>  The compression algorithm. Either <info>ZLIB_ENCODING_RAW</info>, <info>ZLIB_ENCODING_DEFLATE</info> or
                     <info>ZLIB_ENCODING_GZIP</info>.
  <info>int</info>     <strong>$level</strong>     

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

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


id: zlib_get_coding_type
type: function
doc:
<comment>Description:</comment>
  Returns the coding type used for output compression
  
  Returns the coding type used for output compression.

<comment>Return:</comment>
  <info>string|false</info>  Possible return values are <return>gzip</return>, <return>deflate</return>, or <info>false</info>.

<comment>See Also:</comment>
   * 
     The zlib.output_compression 
     directive
    


id: zookeeper_dispatch
type: function
doc:
<comment>Description:</comment>
  Calls callbacks for pending operations
  
  The <strong>zookeeper_dispatch()</strong> function calls the callbacks passed by operations like Zookeeper::get or
  Zookeeper::exists.
  
  Since version 0.4.0, this function must be called manually to achieve asynchronous operations. If
  you want that to be done automatically, you also can declare ticks at the beginning of your
  program.
  
  After PHP 7.1, you can ignore this function. This extension uses EG(vm_interrupt) to implement
  async dispatch.

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

<comment>See Also:</comment>
   * Zookeeper::addAuth
   * Zookeeper::connect
   * Zookeeper::__construct
   * Zookeeper::exists
   * Zookeeper::get
   * Zookeeper::getChildren
   * Zookeeper::setWatcher


