ttrss/vendor/thecodingmachine/safe/generated/xml.php

96 lines
3.0 KiB
PHP
Raw Normal View History

<?php
namespace Safe;
use Safe\Exceptions\XmlException;
/**
* xml_parser_create_ns creates a new XML parser
* with XML namespace support and returns a resource handle referencing
* it to be used by the other XML functions.
*
* @param string $encoding The input encoding is automatically detected, so that the
* encoding parameter specifies only the output
* encoding. In PHP 5.0.0 and 5.0.1, the default output charset is
* ISO-8859-1, while in PHP 5.0.2 and upper is UTF-8. The supported
* encodings are ISO-8859-1, UTF-8 and
* US-ASCII.
* @param string $separator With a namespace aware parser tag parameters passed to the various
* handler functions will consist of namespace and tag name separated by
* the string specified in separator.
* @return resource Returns a resource handle for the new XML parser.
* @throws XmlException
*
*/
function xml_parser_create_ns(string $encoding = null, string $separator = ":")
{
error_clear_last();
if ($separator !== ":") {
$result = \xml_parser_create_ns($encoding, $separator);
} elseif ($encoding !== null) {
$result = \xml_parser_create_ns($encoding);
} else {
$result = \xml_parser_create_ns();
}
if ($result === false) {
throw XmlException::createFromPhpError();
}
return $result;
}
/**
* xml_parser_create creates a new XML parser
* and returns a resource handle referencing it to be used by the
* other XML functions.
*
* @param string $encoding The optional encoding specifies the character
* encoding for the input/output in PHP 4. Starting from PHP 5, the input
* encoding is automatically detected, so that the
* encoding parameter specifies only the output
* encoding. In PHP 4, the default output encoding is the same as the
* input charset. If empty string is passed, the parser attempts to identify
* which encoding the document is encoded in by looking at the heading 3 or
* 4 bytes. In PHP 5.0.0 and 5.0.1, the default output charset is
* ISO-8859-1, while in PHP 5.0.2 and upper is UTF-8. The supported
* encodings are ISO-8859-1, UTF-8 and
* US-ASCII.
* @return resource Returns a resource handle for the new XML parser.
* @throws XmlException
*
*/
function xml_parser_create(string $encoding = null)
{
error_clear_last();
if ($encoding !== null) {
$result = \xml_parser_create($encoding);
} else {
$result = \xml_parser_create();
}
if ($result === false) {
throw XmlException::createFromPhpError();
}
return $result;
}
/**
* This function allows to use parser inside
* object. All callback functions could be set with
* xml_set_element_handler etc and assumed to be
* methods of object.
*
* @param resource $parser A reference to the XML parser to use inside the object.
* @param object $object The object where to use the XML parser.
* @throws XmlException
*
*/
function xml_set_object($parser, object &$object): void
{
error_clear_last();
$result = \xml_set_object($parser, $object);
if ($result === false) {
throw XmlException::createFromPhpError();
}
}