1--TEST--
2Test xml_set_start_namespace_decl_handler function: basic
3--EXTENSIONS--
4xml
5--FILE--
6<?php
7$xml = <<<HERE
8<aw1:book xmlns:aw1="http://www.somewhere.com/namespace1"
9          xmlns:aw2="file:/DTD/somewhere.dtd">
10<aw1:para>Any old text.</aw1:para>
11<aw2:td>An HTML table cell.</aw2:td>
12</aw1:book>
13HERE;
14
15$parser = xml_parser_create_ns();
16xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, 0);
17
18var_dump(xml_set_start_namespace_decl_handler( $parser, "Namespace_Start_Handler" ));
19var_dump(xml_set_end_namespace_decl_handler( $parser, "Namespace_End_Handler" ));
20
21xml_parse( $parser, $xml, true);
22xml_parser_free( $parser );
23
24echo "Done\n";
25
26function Namespace_Start_Handler( $parser, $prefix, $uri ) {
27    echo "Namespace_Start_Handler called\n";
28    echo "...Prefix: ". $prefix . "\n";
29    echo "...Uri: ". $uri . "\n";
30}
31
32function Namespace_End_Handler($parser, $prefix) {
33    echo "Namespace_End_Handler called\n";
34    echo "...Prefix: ". $prefix . "\n\n";
35}
36
37function DefaultHandler( $parser, $data ) {
38   print( 'DefaultHandler Called<br/>' );
39}
40?>
41--EXPECT--
42bool(true)
43bool(true)
44Namespace_Start_Handler called
45...Prefix: aw1
46...Uri: http://www.somewhere.com/namespace1
47Namespace_Start_Handler called
48...Prefix: aw2
49...Uri: file:/DTD/somewhere.dtd
50Done
51