PHP xml_set_element_handler() funktion

Definition og brug

xml_set_element_handler() funktionen opretter start- og slutelementbehandlere.

Hvis behandleren oprettes succesfuldt, vil denne funktion returnere true; ellers returneres false.

Syntaks

xml_set_element_handler(parser,start,end)
Parametre Beskrivelse
parser Obligatorisk. Angiver den XML-parser, der skal bruges.
start Obligatorisk. Angiver funktionen, der skal kaldes, når elementet starter.
end Obligatorisk. Angiver funktionen, der skal kaldes, når elementet slutter.

af start Den funktion, der angives som parameter, skal have tre parametre:

Parametre Beskrivelse
parser Obligatorisk. Angiver en variabel, der indeholder XML-parseren til behandleren.
name Obligatorisk. Angiver en variabel, der indeholder navnet på elementet, der udløser denne funktion.
data Obligatorisk. Angiver en array, der indeholder elementets egenskaber.

af end Den funktion, der angives som parameter, skal have tre parametre:

Parametre Beskrivelse
parser Obligatorisk. Angiver en variabel, der indeholder XML-parseren til behandleren.
name Obligatorisk. Angiver en variabel, der indeholder navnet på elementet, der udløser denne funktion.

Beskrivelse

start og end Parametren kan også være en array, der indeholder objektreferencer og metodenavne.

Eksempel

<?php
$parser=xml_parser_create();
function start($parser,$element_name,$element_attrs)
  {
  switch($element_name)
    {
    case "NOTE":
    echo "-- Bemærk --<br />";
    break; 
    case "TO":
    echo "Til: ";
    break; 
    case "FROM":
    echo "Fra: ";
    break; 
    case "HEADING":
    echo "Overskrift: ";
    break; 
    case "BODY":
    echo "Besked: ";
    }
  }
funktion stop($parser,$element_name)
  {
  echo "<br />";
  }
funktion char($parser,$data)
  {
  echo $data;
  }
xml_set_element_handler($parser,"start","stop");
xml_set_character_data_handler($parser,"char");
$fp=fopen("test.xml","r");
mens ($data=fread($fp,4096))
  {
  xml_parse($parser,$data,feof($fp)) eller 
  død (sprintf("XML Fejl: %s på linje %d", 
  xml_error_string(xml_get_error_code($parser)),
  xml_get_current_line_number($parser)));
  }
xml_parser_free($parser);
?>

Uddrag:

-- Bemærkninger --
Til: George
Fra: John
Overskrift: Påmindelse
Besked: Glem ikke mødet!