PHP xml_set_element_handler() fonksiyonu

Tanım ve Kullanım

xml_set_element_handler() fonksiyonu başlangıç ve bitiş element işleyicilerini oluşturur.

İşleyici başarılı bir şekilde oluşturulduysa bu fonksiyon true döner; aksi takdirde false döner.

Gramer

xml_set_element_handler(parser,start,end)
Parametre Tanım
parser Gerekli. Kullanılacak XML işleyicisini belirler.
start Gerekli. Elementin başında çağrılan fonksiyonu belirler.
end Gerekli. Elementin sonunda çağrılan fonksiyonu belirler.

tarafından start Parametre belirleyen fonksiyonun üç parametreye sahip olması gerekir:

Parametre Tanım
parser Gerekli. XML işleyicisini içeren bir değişken belirler.
name Gerekli. Bir değişken belirler, bu değişken fonksiyonu tetikleyen elementin adını içerir.
data Gerekli. Element özelliklerini içeren bir dizi belirler.

tarafından end Parametre belirleyen fonksiyonun üç parametreye sahip olması gerekir:

Parametre Tanım
parser Gerekli. XML işleyicisini içeren bir değişken belirler.
name Gerekli. Bir değişken belirler, bu değişken fonksiyonu tetikleyen elementin adını içerir.

Açıklama

start ve end Parametre değişkeni bir dizi de olabilir, bu dizi nesne referanslarını ve metod isimlerini içerir.

Örnek

<?php
$parser=xml_parser_create();
function start($parser,$element_name,$element_attrs)
  {
  switch($element_name)
    {
    case "NOTE":
    echo "-- Nota --<br />";
    break; 
    case "TO":
    echo "To: ";
    break; 
    case "FROM":
    echo "Kimden: ";
    break; 
    case "HEADING":
    echo "Başlık: ";
    break; 
    case "BODY":
    echo "Mesaj: ";
    }
  }
function stop($parser,$element_name)
  {
  echo "<br />";
  }
function char($parser,$data)
  {
  echo $data;
  }
xml_set_element_handler($parser,"start","stop");
xml_set_character_data_handler($parser,"char");
$fp=fopen("test.xml","r");
while ($data=fread($fp,4096))
  {
  xml_parse($parser,$data,feof($fp)) or 
  die (sprintf("XML Hatası: %s satır %d", 
  xml_error_string(xml_get_error_code($parser)),
  xml_get_current_line_number($parser)));
  }
xml_parser_free($parser);
?>

Çıktı:

-- Not --
Kime: George
Kimden: John
Başlık: Hatırlatma
Mesaj: Toplantıyı unutmayın!