漢字在php應(yīng)用中經(jīng)常會(huì)給我們帶來(lái)一些麻煩,今天在網(wǎng)上找到一段array數(shù)組轉(zhuǎn)換成xml時(shí)發(fā)現(xiàn)漢字就為空了,后來(lái)gg了關(guān)天得出比較好的結(jié)果了,下面與大家分享,在 php 數(shù)組轉(zhuǎn)xml我們?cè)趐hp中學(xué)會(huì)這樣來(lái)寫:
- function array2xml($array, $xml = false){
- if($xml === false){
- $xml = new SimpleXMLElement('<root/>');
- }
- foreach($array as $key => $value){
- if(is_array($value)){
- array2xml($value, $xml->addChild($key));
- }else{
- $xml->addChild($key, $value);
- }
- }
- return $xml->asXML();
- }
- header('Content-type: text/xml');
- print array2xml($array);
當(dāng)內(nèi)容出現(xiàn)漢字時(shí)會(huì)出現(xiàn)為空的情況,解決辦法是轉(zhuǎn)編碼處理,代碼如下:
- function array2xml($array, $xml = false){
- if($xml === false){
- $xml = new SimpleXMLElement('<root/>');
- }
- foreach($array as $key => $value){
- if(is_array($value)){
- array2xml($value, $xml->addChild($key));
- }else{
- //$value=utf8_encode($value);
- if (preg_match("/([x81-xfe][x40-xfe])/", $value, $match)) {
- $value = iconv('gbk', 'utf-8', $value);
- //判斷是否有漢字出現(xiàn)
- }
- $xml->addChild($key, $value);
- }
- }
- return $xml->asXML();
- }
新聞熱點(diǎn)
疑難解答