PHP 8.4.2 Released!

xml_parser_set_option

(PHP 4, PHP 5, PHP 7, PHP 8)

xml_parser_set_optionValorizza le opzioni di un parser XML

Descrizione

xml_parser_set_option(resource $parser, int $option, mixed $value): bool

Valorizza un opzione in un parser XML.

Elenco dei parametri

parser

Un riferimento al parser XML del quale impostare un'opzione.

option

Quale opzione impostare. Vedere sotto.

Sono disponibili le seguenti opzioni:

Opazioni del parser XML
Costante dell'opzione Tipo dati Descrizione
XML_OPTION_CASE_FOLDING integer Controlla se case-folding è abilitato per questo parser XML. Abilitato per impostazione predefinita.
XML_OPTION_SKIP_TAGSTART integer Specifica quanti catatteri devono essere ignorati all'inizio di un nome di tag.
XML_OPTION_SKIP_WHITE integer Indica se si devono saltare i valori che consistono in caratteri di spazio.
XML_OPTION_TARGET_ENCODING string Imposta quale codifica di destinazione usare in questo parser XML.Per impostazione predefinita, è impostata la stessa codifica del sorgente utilizzata da xml_parser_create(). Le codifiche di destinazione supportate sono ISO-8859-1, US-ASCII e UTF-8.

value

Il nuovo valore dell'opzione.

Valori restituiti

Questa funzione restituisce false se parser non si riferisce ad un parser valido, o se l'opzione non può essere impostata. Altrimenti l' opzione viene impostata e la funzione restituisce true.

add a note

User Contributed Notes 3 notes

up
2
www.thomaskoch.it
16 years ago
The option XML_OPTION_SKIP_WHITE has no effect in my PHP 5.2.6 (with expat-1.95.8-5). To skip cdata composed of white space only, simply check for that at the beginning of your cdata callback function:

<?php
function callback_cdata($parser, $cdata)
{
if(!
trim($cdata))
return;

// ... continue processing ...
}
?>
up
1
pupeno at pupeno dot com
22 years ago
XML is case sensitive, then, from my point of view, disabling case folding doesn't goes against xml 1.0 specifications but the contrary, disabling case folding allow us to distiguish between diferent cases of the same letter ('a' and 'A') which of XML are two diferent things.
From my point of view, disabling case folding is a good practice and I think it should be disabled by default.
More information on:
http://www.isacat.net/2001/xml/case.htm
and
http://www.w3.org/TR/REC-xml
Thank you.
up
0
j[no_spam_please] at [thx]jessepearson dot net
17 years ago
In the function below, you need to update two lines if you don't want php to throw warnings.

change these two:
$elements[$index]['attributes'] = $tag['attributes'];
$elements[$index]['content'] = $tag['value'];

to this:
$elements[$index]['attributes'] = empty($tag['attributes']) ? "" : $tag['attributes'];
$elements[$index]['content'] = empty($tag['value']) ? "" : $tag['value'];
To Top