xml_parser_set_option

Set options in an XML parser

&reftitle.description; `bool` `xml_parser_set_option` `XMLParser` `parser` `int` `option` ``string``int``bool```value`

Sets an option in an XML parser.

&reftitle.parameters;

`parser`

- A reference to the XML parser to set an option in.

`option`

- Which option to set. See below.

  The following options are available:

  ## XML parser options

  Option constant | Data type | Description
  `XML_OPTION_CASE_FOLDING` | bool | Controls whether case-folding is enabled for this XML parser. Enabled by default.
  `XML_OPTION_PARSE_HUGE` | bool | Allows parsing documents larger than 10 MB. This option should only be enabled when the document size is bounded because this could otherwise lead to a DoS. This option is only available when using libxml2.
  `XML_OPTION_SKIP_TAGSTART` | integer | Specify how many characters should be skipped in the beginning of a tag name.
  `XML_OPTION_SKIP_WHITE` | bool | Whether to skip values consisting of whitespace characters.
  `XML_OPTION_TARGET_ENCODING` | string | Sets which target encoding to use in this XML parser.By default, it is set to the same as the source encoding used by `xml_parser_create`. Supported target encodings are `ISO-8859-1`, `US-ASCII` and `UTF-8`.

`value`

- The option's new value.

&reftitle.returnvalues;

Returns &true; on success or &false; on failure.

&reftitle.errors;

Throws a `ValueError` when an invalid value is passed to `option`.

Prior to PHP 8.0.0, the function returned false when passing an invalid value to `option` generated a `E_WARNING` as well as making the function return &false;.

&reftitle.changelog;

&Version; | &Description;
8.4.0 | Added the option `XML_OPTION_PARSE_HUGE`.
8.3.0 | The `value` parameter now also accepts booleans. The options `XML_OPTION_CASE_FOLDING` and `XML_OPTION_SKIP_WHITE` are now boolean options.
&xml.changelog.parser-param;
8.0.0 | A `ValueError` is now thrown if `option` is invalid.