0

こんにちは。

このようなページがあります -edit-コードが動的であることに注意することが重要です。ユーザーがこれらの写真をアップロードすると、エコーを介して、内部に img コードを含む新しいリスト オブジェクトが作成されます。リストが同じになることは決してないため、「ハードコード」することはできません。クライアントに 50 枚以上の写真をアップロードしてもらうので、リスト アイテムは 50 枚以上になります。私ができるようにしたいのは、作成したリストを文字列に変換する方法です-または、他の提案を受け入れます。

<ul>
<li class="ui-state-default"><img code for img 1></li>
<li class="ui-state-default"><img code 2></li>
<li class="ui-state-default"><img code 3></li>
<li class="ui-state-default"><img code 4></li>
<li class="ui-state-default"><img code 5></li>
<li class="ui-state-default"><img code 6></li>
<li class="ui-state-default"><img code 7></li>
</ul>

私がやりたいことは、PHP を使用してこのリストを正しい順序で処理する方法を見つけることです。

IE そのリストから XML を作成します。

私は SimpleXML に精通していますが、PHP にリストを表示させる方法を理解するのに苦労しています。私の質問はどのように - PHP にそのリストを読み取らせて、その xml を作成できるようにするにはどうすればよいですか?

私はいくつかの Ajax の例を試しました。

提供できる支援に感謝します。「DOM を使用する」というだけのコメントを残して、それ以上説明しないでください。私はそれらの多くに道を譲りました。

編集 - - - - - -

私の最後の試みはこれでした

<?php
$dom = new DOMDocument();
$dom->loadHTML($data);
$unorderedList = $dom->getElementsByTagName('ul');
foreach ($unorderedList->item(0)->getElementsByTagName('li') as $unorderedList) {
    echo $unorderedList->nodeValue.'<br />';                    
}
?>

しかし、私はリストを表示できるようにPHPを取得できません...私の質問は、XMLを作成する方法ではなく、PHPがその上のHTML(同じページ)でリストを表示する方法を中心に展開しています。

4

2 に答える 2

1

すべての<li>要素をループしていますが、イメージ タグを探しています。だから、あなたはより深いレベルに行く必要があります

if ($unorderedList->hasChildNodes()) {
    foreach ($unorderedList->childNodes as $image) {
        var_dump($image->getAttribute('src'));
    }
} 
于 2013-07-18T18:20:17.923 に答える
1

as $varnameメイン変数とは異なるものを作成してください。$unorderedList->nodeValue空です(テキストノードのコンテンツはありません。プロパティの文書化が不十分であることは認めます 。「このノードの値は、そのタイプに応じて」は何も言いません)。出力:

<br /><br /><br /><br /><br /><br /><br />

そのコンテンツのhtmlが必要な場合:

foreach ($unorderedList->item(0)->getElementsByTagName('li') as $listItem) {
    foreach($listItem->childNodes as $node){
        echo $dom->saveHTML($node);//use $dom->saveXML($node) if in PHP < 5.3.6
    }
    echo '<br />';                    
}
于 2013-07-18T18:21:43.757 に答える