Menukar Objek SimpleXML kepada Rentetan untuk Semua Konteks
Apabila bekerja dengan XML, menggunakan sambungan SimpleXML dalam PHP menyediakan akses mudah kepada data XML. Walau bagaimanapun, dalam senario tertentu, adalah perlu untuk menukar objek SimpleXML kepada rentetan, tanpa mengira konteksnya.
Sebagai contoh, pertimbangkan XML berikut:
<channel> <item> <title>This is title 1</title> </item> </channel>
Menggunakan SimpleXML untuk mendapatkan semula tajuk sebagai rentetan berfungsi dengan sempurna:
$xml = simplexml_load_string($xmlstring); echo $xml->channel->item->title;
Walau bagaimanapun, kesukaran timbul apabila cuba untuk layan tajuk sebagai rentetan dalam konteks yang berbeza, seperti semasa menambahkannya pada tatasusunan:
$foo = array( $xml->channel->item->title );
Dalam kes ini, objek SimpleXML yang tidak dijangka ditambahkan pada tatasusunan dan bukannya rentetan. Untuk mengatasi isu ini, pertimbangkan kaedah berikut:
Menaip Objek SimpleXML kepada Rentetan:
$foo = array( (string) $xml->channel->item->title );
Menaip objek SimpleXML kepada rentetan secara eksplisit menggunakan (rentetan) secara dalaman menggunakan kaedah __toString(). Walaupun kaedah ini tidak didedahkan secara terbuka untuk mengelakkan gangguan dengan pemetaan SimpleXMLObject, kaedah ini kekal boleh diakses melalui teknik ini.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menukar Objek SimpleXML kepada Rentetan dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!