Loading:


xml_parser_set_option

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

Ustawia opcję parsera XML.

Parametry:

parser- Odniesienie do parsera XML, aby ustawić opcję cala

option- Która opcja została ustawiona. Patrz niżej.

Dostępne są następujące opcje:

Opcje stałe
Typ danych
Opis
XML_OPTION_CASE_FOLDING integer Kontroluje, czy zwijania jest włączona do tego parsera XML. Domyślnie włączone.
XML_OPTION_SKIP_TAGSTART integer
Określa, ile znaków powinno być pominięte w początku nazwy znacznika.
XML_OPTION_SKIP_WHITE integer
Czy, aby pominąć wartości składające się z białych znaków.
XML_OPTION_TARGET_ENCODING string Zestawy skierowane do kodowania użyć w tym XML parser, domyślnie jest ustawiony na tym samym jako źródło kodowania używanego przez xml_parser_create (). Obsługiwane są docelowe kodowanie ISO-8859-1, US-ASCII i UTF-8.


value- opcja nowej wartości


Napisz Artyku³

Listing

function xml_to_array( $file )
{
    $parser = xml_parser_create();
    xml_parser_set_option( $parser, XML_OPTION_CASE_FOLDING, 0 );
    xml_parser_set_option( $parser, XML_OPTION_SKIP_WHITE, 1 );
    xml_parse_into_struct( $parser, file_get_contents($file), $tags );
    xml_parser_free( $parser );
   
    $elements = array();
    $stack = array();
    foreach ( $tags as $tag )
    {
        $index = count( $elements );
        if ( $tag[\'type\'] == \"complete\" || $tag[\'type\'] == \"open\" )
        {
            $elements[$index] = array();
            $elements[$index][\'name\'] = $tag[\'tag\'];
            $elements[$index][\'attributes\'] = $tag[\'attributes\'];
            $elements[$index][\'content\'] = $tag[\'value\'];
           
            if ( $tag[\'type\'] == \"open\" )
            {    # push
                $elements[$index][\'children\'] = array();
                $stack[count($stack)] = &$elements;
                $elements = &$elements[$index][\'children\'];
            }
        }
       
        if ( $tag[\'type\'] == \"close\" )
        {    # pop
            $elements = &$stack[count($stack) - 1];
            unset($stack[count($stack) - 1]);
        }
    }
    return $elements[0];
}






Dodano przez: igor
Ranga: Administrator serwisu Punktów: 28716
Komentarze użytkowników
    • Tre¶æ komentarza
      Kod do komentarza (opcjonalnie)
      PHP JavaScript MySQL Smarty SQL HTML CSS ActionScript
      Autor
      Token
      token

       

       








funkcje.net
Wszelkie prawa zastrzeżone©. | Funkcje.net 2008-2020 v.1.5 | design: diviXdesign & rainbowcolors