2

これが私の問題です。XSLTProcessorを使用してxmlをhtmlに変換しようとしています。その使用法についてはすでに読みましたが、次の問題があります。transformToXML(xml_file)関数では、xml_fileが実際のxmlファイルである必要があります。transformToXML関数でファイルの代わりに文字列を使用することは可能ですか?私はこれをオンラインで検索しようとしましたが、私が得るのは、xmlファイルを使用してすでに見たものだけです。この変換を大規模に使用する必要があるため(多くのユーザーにとっては多数の異なる変換)、サーバー上のファイルを使用できません。これが私のコードですので、より良い画像を得ることができるかもしれません:

$productxml=  GetShoppingItem($params);

$file = 'ProductQr.xml';    
file_put_contents($file, $productxml);

$xml = new DOMDocument();
$xml->load('ProductQr.xml');

$XSL = new DOMDocument();
$XSL->load('XSLTForProduct.xsl');

$xslt = new XSLTProcessor();
$xslt->importStylesheet($XSL);

$html = $xslt->transformToXML( $xml );
return $html;

ご覧のとおり、ここで$ productxml文字列を取得してProductQr.xmlに書き込んでいるので、後でここで使用できます:transformToXML($ xml)。しかし、多くの変換があり、さまざまな製品がたくさんあるため、1つのxmlファイルを使用することはできません。理想的には以下を使用します:

$html = $xslt->transformToXML($productxml);

xmlファイルに書き込むことなく、transformToXMLには文字列ではなくファイルが必要です。何かご意見は?

4

1 に答える 1

3

文字列から XML を解析するloadXML代わりに使用できます。load

于 2013-02-01T11:57:54.380 に答える