Subversion-Projekte lars-tiefland.php_share

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1 lars 1
<?PHP
2
/**
3
 * This shows that XML_Serializer is able to work with
4
 * empty arrays
5
 *
6
 * @author Stephan Schmidt <schst@php.net>
7
 */
8
error_reporting(E_ALL);
9
require_once 'XML/Serializer.php';
10
 
11
$data = array(
12
                array('name' => 'Superman', 'age' => 34, 'realname' => 'Clark Kent'),
13
                array('name' => 'Batman', 'age' => 32, 'realname' => 'Bruce Wayne'),
14
                'villain' => array('name' => 'Professor Zoom', 'age' => 'unknown', 'realname' => 'Hunter Zolomon')
15
            );
16
 
17
$serializer = new XML_Serializer();
18
$serializer->setOption(XML_SERIALIZER_OPTION_INDENT, '    ');
19
$serializer->setOption(XML_SERIALIZER_OPTION_DEFAULT_TAG, 'hero');
20
 
21
$serializer->serialize($data);
22
echo '<pre>';
23
echo "Default behaviour:\n";
24
echo htmlspecialchars($serializer->getSerializedData());
25
echo '</pre>';
26
 
27
$serializer->setOption(XML_SERIALIZER_OPTION_SCALAR_AS_ATTRIBUTES, true);
28
 
29
$serializer->serialize($data);
30
echo '<pre>';
31
echo "XML_SERIALIZER_OPTION_SCALAR_AS_ATTRIBUTES = true:\n";
32
echo htmlspecialchars($serializer->getSerializedData());
33
echo '</pre>';
34
 
35
$serializer->setOption(XML_SERIALIZER_OPTION_SCALAR_AS_ATTRIBUTES, array(
36
                                                                       'hero'    => array('name', 'age'),
37
                                                                       'villain' => array('realname')
38
                                                                       )
39
                      );
40
 
41
$serializer->serialize($data);
42
echo '<pre>';
43
echo "XML_SERIALIZER_OPTION_SCALAR_AS_ATTRIBUTES is an array:\n";
44
echo htmlspecialchars($serializer->getSerializedData());
45
echo '</pre>';
46
?>