ホームページ >バックエンド開発 >PHPチュートリアル >XML ファイルをループする方法
XML ファイルをトラバースするにはどうすればよいですか? それをデータベースに入れる必要がありますか?
4a7fa56882450b2fc4e006ee02cffdde
668c02319a569e7c2e32836e861a0654
045cd76d717ece532391e80a7c91bf01 > 27e76437dc2b6cd8a909643e94194bd0
695abc641be76864f52e1060a2ef5df6果物9572cdfa094ffb0c87adf52aa40c3069
$s = <<<EOF<?xml version="1.0" encoding="utf-8"?><MedicalDiagnosis dataBlock="Root0"> <Evaluations total="2"> <Evaluation data="植物系统"> <OBJECT data="苹果,梨">水果</OBJECT> <OBJECT data="竹子,富贵竹">乔木</OBJECT> <OBJECT data="菊花,康乃馨">花类</OBJECT> <OBJECT data="">其他</OBJECT> </Evaluation> <Evaluation data="动物系统"> <OBJECT data="老虎,狮子">陆</OBJECT> <OBJECT data="鱼,海马">海</OBJECT> <OBJECT data="">其他</OBJECT> </Evaluation> </Evaluations></MedicalDiagnosis>EOF;$x = simplexml_load_string($s);$data = [];foreach($x->Evaluations as $Evaluations){ foreach($Evaluations->Evaluation as $Evaluation){ $tmpData = current($Evaluation->attributes()->data); if(!isset($data["$tmpData"])){ $data["$tmpData"] = []; } foreach($Evaluation->OBJECT as $OBJECT){ $data["$tmpData"]["$OBJECT"] = current($OBJECT->attributes()->data); } }}print_r($data);/*Array( [植物系统] => Array ( [水果] => 苹果,梨 [乔木] => 竹子,富贵竹 [花类] => 菊花,康乃馨 [其他] => ) [动物系统] => Array ( [陆] => 老虎,狮子 [海] => 鱼,海马 [其他] => ))*/先生、なぜ見つからないページを直接表示するのですか?
ページが見つかりません.... サーバー上でエラーが発生しているか、リンクが間違って書かれています...
$s = <<<EOF<?xml version="1.0" encoding="utf-8"?><MedicalDiagnosis dataBlock="Root0"> <Evaluations total="2"> <Evaluation data="植物系统"> <OBJECT data="苹果,梨">水果</OBJECT> <OBJECT data="竹子,富贵竹">乔木</OBJECT> <OBJECT data="菊花,康乃馨">花类</OBJECT> <OBJECT data="">其他</OBJECT> </Evaluation> <Evaluation data="动物系统"> <OBJECT data="老虎,狮子">陆</OBJECT> <OBJECT data="鱼,海马">海</OBJECT> <OBJECT data="">其他</OBJECT> </Evaluation> </Evaluations></MedicalDiagnosis>EOF;$x = simplexml_load_string($s);$data = [];foreach($x->Evaluations as $Evaluations){ foreach($Evaluations->Evaluation as $Evaluation){ $tmpData = current($Evaluation->attributes()->data); if(!isset($data["$tmpData"])){ $data["$tmpData"] = []; } foreach($Evaluation->OBJECT as $OBJECT){ $data["$tmpData"]["$OBJECT"] = current($OBJECT->attributes()->data); } }}print_r($data);/*Array( [植物系统] => Array ( [水果] => 苹果,梨 [乔木] => 竹子,富贵竹 [花类] => 菊花,康乃馨 [其他] => ) [动物系统] => Array ( [陆] => 老虎,狮子 [海] => 鱼,海马 [其他] => ))*/Web ページが見つかりません.... サーバー上のエラーです。サーバーが間違っているか、リンクが間違っています...
[]はPHP 5.4+の書き方
フロントに割り当て
$this->assign('data',$data) ;表示をループする方法と追加するスタイル...それはあなた次第です
http://document.thinkphp.cn/manual_3_2.html#volist