MOON
Server: Apache/2.2.34 (Unix) mod_ssl/2.2.34 OpenSSL/0.9.8e-fips-rhel5 mod_bwlimited/1.4 FrontPage/5.0.2.2635
System: Linux server.asjudinet.com 2.6.32-042stab141.3 #1 SMP Fri Nov 15 22:45:34 MSK 2019 i686
User: asjudine (504)
PHP: 5.2.17
Disabled: NONE
Upload Files
File: //usr/share/doc/cpanel-php54-XML-Serializer-0.20.2/examples/unserializeEnum.php
<?PHP
/**
 * This example shows how to use the XML_UNSERIALIZER_OPTION_FORCE_ENUM
 * option
 *
 * @author  Stephan Schmidt <schst@php.net>
 */
error_reporting(E_ALL);

require_once 'XML/Unserializer.php';

$xml1 = '<root>
   <item>
     <name>schst</name>
   </item>
   <item>
     <name>luckec</name>
   </item>
 </root>';
    
$xml2 = '<root>
   <item>
     <name>schst</name>
   </item>
 </root>';
    
$options = array(
                  XML_UNSERIALIZER_OPTION_FORCE_ENUM => array('item')
                );

                
//  be careful to always use the ampersand in front of the new operator 
$unserializer = &new XML_Unserializer($options);

// userialize the document
$status = $unserializer->unserialize($xml1);

if (PEAR::isError($status)) {
    echo 'Error: ' . $status->getMessage();
} else {
    $data = $unserializer->getUnserializedData();
    echo '<pre>';
    print_r($data);
    echo '</pre>';
}

// userialize the document
$status = $unserializer->unserialize($xml2);

if (PEAR::isError($status)) {
    echo 'Error: ' . $status->getMessage();
} else {
    $data = $unserializer->getUnserializedData();
    echo '<pre>';
    print_r($data);
    echo '</pre>';
}
?>