Advertisement728 × 90 — Leaderboard
Advertisement320 × 50 — Mobile banner

XML PHP Converter

Generate PHP classes from XML
Session restored from your last visit
Also need:XML to JSONJSON to PHP ArrayXML Formatter
Advertisement — Fullscreen
Input
Output
Input
AdvertisementResponsive
Output
Ready0 chars0 lines
Advertisement728 × 90

About XML PHP Converter

Paste your XML and get PHP class definitions. Supports PHP 7.4 typed properties, PHP 8.0 constructor promotion, and PHP 8.1 readonly properties.

Frequently Asked Questions

What is XML to PHP class generation?
XML to PHP class generation analyses an XML document and produces PHP class definitions that model its element and attribute structure. The generated classes give you a typed representation of the XML data, making it easier to work with in PHP projects.
Should I use SimpleXML or DOMDocument for XML parsing in PHP?
SimpleXML is easiest for navigating well-formed XML: $xml = simplexml_load_string($xmlString); $value = $xml->elementName. DOMDocument offers more control: xpath queries, node manipulation, namespace support. For generating and modifying XML (not just reading), DOMDocument is the better choice. The generated PHP class works as a structural guide for either approach.
How do I access XML attributes with SimpleXML in PHP?
Cast the element to an array to access attributes: (array) $element["attributeName"]. Or iterate: foreach ($element->attributes() as $name => $value). For namespace-qualified attributes, use attributes("namespace", true). The generated PHP class maps attributes to public properties — hydrate them manually from the SimpleXML result.
How do I convert an XML string to a PHP associative array?
$xml = simplexml_load_string($xmlString); $json = json_encode($xml); $array = json_decode($json, true). This json_encode trick works for simple XML but loses attribute distinctions — attributes and text content may collide. For complex documents, use a dedicated converter library like sabre/xml or prewk/xml-string-streamer.
Can I convert PHP objects back to XML with SimpleXML or DOMDocument?
SimpleXML has no built-in serialiser from a custom class. Use DOMDocument: create elements with $doc->createElement() and append them. For annotation-based XML binding (similar to JAXB), use the sabre/xml library which maps arrays/objects to XML using a fluent writer API.
Advertisement300 × 250
Advertisement300 × 250
Ad
AdvertisementSticky banner
Ad
AdvertisementSticky banner