XML を HTML にマップする PHP コードの例

WBOY
リリース: 2016-06-21 08:59:52
オリジナル
887 人が閲覧しました

次の例では、XML ドキュメント内のタグを HTML タグに直接マッピングします。 「マップされた配列」に存在しない要素は無視されます。もちろん、この例は特定の XML ドキュメントに対してのみ機能します。

$file = "data.xml";
$map_array = array(
"BOLD" => "B",
" EMPHASIS" => "I",
"LITERAL" => "TT"
);

function startElement($parser, $name, $attrs) {
global $map_array;
if ($htmltag == $map_array[$name]) {
print "<$htmltag>";
}
}

function endElement($parser , $ name) {
global $map_array;
if ($htmltag == $map_array[$name]) {
print "";
}
}

functioncharacterData($parser, $data) {
print $data;
}

$xml_parser = xml_parser_create();
// ケースの折りたたみを使用して、これらの要素名は要素配列内で見つけることができます
xml_parser_set_option($xml_parser, XML_OPTION_CASE_FOLDING, true);
xml_set_element_handler($xml_parser, "startElement", "endElement");
xml_set_character_data_handler($xml_parser, "characterData" );
if (!($fp = fopen($file, "r"))) {
die("XML 入力を開けませんでした");
}

while ( $data = fread($fp, 4096)) {
if (!xml_parse($xml_parser, $data, feof($fp))) {
die(sprintf("XML エラー: %s 行目 %) d",
xml_error_string(xml_get_error_code($xml_parser)),
xml_get_current_line_number($xml_parser)));
}
}
xml_parser_free($xml_parser);
?> ;



関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート