<HTML ><HEAD ><TITLE >xml_set_element_handler</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK REL="HOME" TITLE="PHP Manual" HREF="index.html"><LINK REL="UP" TITLE="XML parser functions" HREF="ref.xml.html"><LINK REL="PREVIOUS" TITLE="xml_set_default_handler" HREF="function.xml-set-default-handler.html"><LINK REL="NEXT" TITLE="xml_set_end_namespace_decl_handler" HREF="function.xml-set-end-namespace-decl-handler.html"><META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=ISO-8859-1"></HEAD ><BODY CLASS="refentry" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE SUMMARY="Header navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >PHP Manual</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="function.xml-set-default-handler.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="function.xml-set-end-namespace-decl-handler.html" ACCESSKEY="N" >Next</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><H1 ><A NAME="function.xml-set-element-handler" ></A >xml_set_element_handler</H1 ><DIV CLASS="refnamediv" ><A NAME="AEN96274" ></A ><P > (PHP 3>= 3.0.6, PHP 4 )</P >xml_set_element_handler -- set up start and end element handlers</DIV ><DIV CLASS="refsect1" ><A NAME="AEN96277" ></A ><H2 >Description</H2 >bool <B CLASS="methodname" >xml_set_element_handler</B > ( resource parser, string start_element_handler, string end_element_handler)<BR ></BR ><P > Sets the element handler functions for the XML parser <TT CLASS="parameter" ><I >parser</I ></TT >. <TT CLASS="parameter" ><I >start_element_handler</I ></TT > and <TT CLASS="parameter" ><I >end_element_handler</I ></TT > are strings containing the names of functions that must exist when <A HREF="function.xml-parse.html" ><B CLASS="function" >xml_parse()</B ></A > is called for <TT CLASS="parameter" ><I >parser</I ></TT >. </P ><P > The function named by <TT CLASS="parameter" ><I >start_element_handler</I ></TT > must accept three parameters: <B CLASS="methodname" ><TT CLASS="replaceable" ><I >start_element_handler</I ></TT ></B > ( resource parser, string name, array attribs)<BR ></BR > <P ></P ><DIV CLASS="variablelist" ><DL ><DT ><TT CLASS="parameter" ><I >parser</I ></TT ></DT ><DD ><P > The first parameter, <TT CLASS="replaceable" ><I >parser</I ></TT >, is a reference to the XML parser calling the handler. </P ></DD ><DT ><TT CLASS="parameter" ><I >name</I ></TT ></DT ><DD ><P > The second parameter, <TT CLASS="parameter" ><I >name</I ></TT >, contains the name of the element for which this handler is called. If <A HREF="ref.xml.html#xml.case-folding" >case-folding</A > is in effect for this parser, the element name will be in uppercase letters. </P ></DD ><DT ><TT CLASS="parameter" ><I >attribs</I ></TT ></DT ><DD ><P > The third parameter, <TT CLASS="parameter" ><I >attribs</I ></TT >, contains an associative array with the element's attributes (if any). The keys of this array are the attribute names, the values are the attribute values. Attribute names are <A HREF="ref.xml.html#xml.case-folding" >case-folded</A > on the same criteria as element names. Attribute values are <SPAN CLASS="emphasis" ><I CLASS="emphasis" >not</I ></SPAN > case-folded. </P ><P > The original order of the attributes can be retrieved by walking through <TT CLASS="parameter" ><I >attribs</I ></TT > the normal way, using <A HREF="function.each.html" ><B CLASS="function" >each()</B ></A >. The first key in the array was the first attribute, and so on. </P ></DD ></DL ></DIV > </P ><P > The function named by <TT CLASS="parameter" ><I >end_element_handler</I ></TT > must accept two parameters: <B CLASS="methodname" ><TT CLASS="replaceable" ><I >end_element_handler</I ></TT ></B > ( resource parser, string name)<BR ></BR > <P ></P ><DIV CLASS="variablelist" ><DL ><DT ><TT CLASS="parameter" ><I >parser</I ></TT ></DT ><DD ><P > The first parameter, <TT CLASS="replaceable" ><I >parser</I ></TT >, is a reference to the XML parser calling the handler. </P ></DD ><DT ><TT CLASS="parameter" ><I >name</I ></TT ></DT ><DD ><P > The second parameter, <TT CLASS="parameter" ><I >name</I ></TT >, contains the name of the element for which this handler is called. If <A HREF="ref.xml.html#xml.case-folding" >case-folding</A > is in effect for this parser, the element name will be in uppercase letters. </P ></DD ></DL ></DIV > </P ><P > If a handler function is set to an empty string, or <TT CLASS="constant" ><B >FALSE</B ></TT >, the handler in question is disabled. </P ><P > <TT CLASS="constant" ><B >TRUE</B ></TT > is returned if the handlers are set up, <TT CLASS="constant" ><B >FALSE</B ></TT > if <TT CLASS="parameter" ><I >parser</I ></TT > is not a parser. </P ><DIV CLASS="note" ><BLOCKQUOTE CLASS="note" ><P ><B >Note: </B >Instead of a function name, an array containing an object reference and a method name can also be supplied.</P ></BLOCKQUOTE ></DIV ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="function.xml-set-default-handler.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" ACCESSKEY="H" >Home</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="function.xml-set-end-namespace-decl-handler.html" ACCESSKEY="N" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >xml_set_default_handler</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="ref.xml.html" ACCESSKEY="U" >Up</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >xml_set_end_namespace_decl_handler</TD ></TR ></TABLE ></DIV ></BODY ></HTML >