PHP er et af de mest anvendte programmeringssprog i dag på grund af dets unikke kompatibilitet med andre teknologier, såsom XML, som er en anden populær web skabelse værktøj. Med PHP , har du evnen til at konvertere XML-applikationer i arrays og objekter og vice versa. Der er en bred vifte af overskuelige værktøjer til rådighed for denne konvertering projekt , såsom DOM og SimpleXML . Begge værktøjer er nemme at bruge og i stand til at producere fantastiske resultater , men vi vil fokusere på DOM i dette projekt. Instruktioner
1
Input koden nedenfor for at starte en grundlæggende kodestykke. Et udsnit er en kort streng, der udfører en bestemt opgave godt, og det behøver ikke kræver ekstra kode ud over den standard biblioteket koden.
Array (
" knuder " => array (
" node" => array (
0 = > " text "
1 = > " text "
)
)
)
Denne snippet simpelthen tjekker, om indekset er et heltal , og hvis det er, det sløjfer array til at reproducere det samme element tag navn med den reviderede værdi. I sig selv , vil dette kodestykke ikke fungerer , så en funktion metode skal anvendes til at udføre sin opgave.
2
Indsæt følgende kode til at tilføje en funktion, der er afledt af den PHP DOMDocument klasse. DOM står for Document Object Model . Det er en udvidelse , der giver dig mulighed for at arbejde på XML-dokumenter via DOM API med PHP 5: ?
< Php
class XmlDomConstruct udvider DOMDocument {
offentlig funktion fromMixed ( $ blandet , DOMElement $ domElement = null ) {
$ domElement = is_null ( $ domElement ) ? $ this : $ domElement ;
if ( is_array ( $ blandet) ) {
foreach ( $ blandet som $ index => $ mixedElement ) {
if ( is_int ( $ index )) {
if ($ index == 0 ) {
$ node = $ domElement ,
} else {
$ node = {
$ node = $ node ),
}
} else
3
Indsæt efterfølgende koden for at teste DOM-funktion . Det bør konvertere din PHP array, og give dig de resultater i XML-format : Hej
$ matrix = array (
" knuder " => array (
" node" = > array (
0 = > "tekst" ,
1 = > " text "
) )),
$ this- > dom = new XmlDomConstruct ( '1 .0 ',' utf -8 ');
$ this -> dom -> fromMixed ( $ array) ;
echo $ this- > , dom -> saveXML ();