3

xml データを html に変換したい。以下はサンプルのxmlデータで、html形式で取得/変換したいです。

<content type="html">
  <paragraph id="1291266887">
      <div class="red">
        <span id="main_post_id">
          <p>ten post przedstawia jak wys&#x142;a&#x107;  znacznik&#xF3;w w ust <strong>Ling</strong> -  xyz</p>
          <p>tags znane jako <span class="translation_section  section_2">bezpieczne</span>, b&#x119;d&#x105;  traktowane jako sekcje pkt</p>
          <p>innych materia&#x142;&#xF3;w dziel&#x105;  si&#x119; na <em>literach</em></p>
        </span>
      </div>
  </paragraph>
</content>

つまり、の間に含まれるすべての html コードを取得したいです<paragraph id="..."></paragraph>。phpでやりたいです。PHPを使用して配列に変換すると、すべてのデータがdiv、p、spanの配列になります。<paragraph>..</paragraph>しかし、単一の配列のタグに含まれるhtml全体が必要です。

ここで必要なヘルプをお願いします。このための最善の方法を教えてください。

ありがとう。

4

3 に答える 3

4

PHP で xslt を使用するのは簡単です。ファイル "data.xml" に xml があり、"script.xsl" に xslt-script がある場合は、次のようにします。

<?php  
$proc=new XsltProcessor;  
$proc->importStylesheet(DOMDocument::load("data.xsl"));  
echo $proc->transformToXML(DOMDocument::load("script.xml"));  
?>  

単純な xslt-script は次のようになります。

<?xml version="1.0" encoding="utf-8"?>  
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">  
 <xsl:output method="html" encoding="UTF-8" indent="yes"/>  
  <xsl:template match="/">  
   <html>  
    <head>  
    </head>  
    <body>  
     <xsl:copy-of select="//paragraph"/>  
    </body>  
   </html>  
  </xsl:template>  
</xsl:stylesheet>  
于 2010-12-02T09:33:05.667 に答える
3

それを変換するための XSLT スタイルシートと、それを XML に適用するためのxslt拡張を記述します。

于 2010-12-02T06:40:12.490 に答える
1

ブラウザの保存ページで次のコードを実行すると、ファイルは 2 段階で作成されます。

<?php
$xml=simplexml_load_file("My_Xml.xml");
print_r($xml);
?>
于 2015-12-20T06:46:07.537 に答える