xml - php domdocument Cara membaca dokumen menggunakan url
伊谢尔伦
伊谢尔伦 2017-05-16 13:12:41
0
1
556

Oleh kerana keperluan projek, saya perlu menggunakan php untuk mengubah suai nilai pada xml. Gunakan DOMdocument untuk melakukannya.
Kod adalah seperti berikut

 $xmlpatch ='http://www.*****.com/vr/wtest/vtour/tour.xml';
        $xml = simplexml_load_file($url);
        $doc = new DOMDocument();
        $doc -> formatOutput = benar;
        if($doc -> load($xmlpatch)) {
        $root = $doc ->
        $elm = $root -> getElementsByTagName('scene');
        $hotspot = $elm[1] ->getElementsByTagName('hotspot');
        $hotspot[0] ->setAttribute('videourl',$videourl1);
        $hotspot[1] ->setAttribute('onclick',$videourl2);
    
    
        $doc->save($xmlpatch);
        } 

Kod itu sepatutnya baik Masalahnya ialah saya pada asalnya menulis laluan relatif dalam $xmlpatch Kerana saya menggunakan pakej persekitaran tempatan, tiada masalah.
Tetapi fail php persekitaran dan xml pada pelayan diletakkan merentas domain, jadi saya menukarnya kepada laluan mutlak. Tetapi saya mendapati bahawa skrip gagal. Seseorang dalam talian mencadangkan menggunakan simplexml untuk melakukannya. Tetapi saya memang boleh membacanya selepas bereksperimen, tetapi saya tidak dapat mencari fungsi untuk mengubah suai atribut pada w3cschool.
Tolong bantu saya, terima kasih banyak-banyak Bolehkah anda beritahu saya cara mengubah suai atribut simplexml, atau cara membaca domdocument menggunakan url?

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

membalas semua(1)
迷茫

Mula-mula gunakan curl untuk membaca maklumat fail xml, dan kemudian gunakan DOMdocument atau simplexml untuk memprosesnya.

<?php

$url = 'http://www.abc.com/sitemap.xml';

$header = array(
    'User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:45.0) Gecko/20100101 Firefox/45.0',
    'Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3',
    'Accept-Encoding: gzip, deflate',
);

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_ENCODING, 'gzip');
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
$data = curl_exec($curl);
curl_close($curl);

if ($xml = simplexml_load_string($data)) {
    $xml->row->name = 'new_name'; // Edit XML Object node
    echo $xml->asXML();
}
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan