2

そのため、難しい部分ではないphpを使用してhtmlコンテンツを動的に追加する必要がありますが、PHPが実行されている場所とは異なるドキュメント内の場所にHTMLを配置しようとしています。たとえば、次のようになります。

<div id="firstDiv">
    <?php
        echo "<div id=\"firstDivA\"></div>";
        echo "<div id=\"secondDivA\"></div>";
    ?>
</div>
<div id="secondDiv">
</div>

しかし、「firstDiv」で実行される PHP を使用して、「secondDiv」内に HTML を配置できるようにしたいと考えています。最終結果は次のようになります。

<div id="firstDiv">
    <div id="firstDivA"></div>
</div>
<div id="secondDiv">
    <div id="secondDivA"></div>
</div>

しかし、私はそれを行う方法がわかりません。PHP 5 の DOM に関するいくつかの記事を読みましたが、現在のドキュメントの変更については何も見つかりませんでした。

4

5 に答える 5

4

HTML 内の好きな場所で、PHP の「ブロック」を開いたり閉じたりできます。

<div id="firstDiv">
    <?php echo '<div id="firstDivA"></div>'; ?>
</div>
<div id="secondDiv">
    <?php echo '<div id="secondDivA"></div>'; ?>
</div>

必要に応じて、ob_start()およびob_get_clean( ) を使用して出力をキャプチャすることもできます。

<?php
$separator = "\n";

ob_start();
echo '<div id="firstDivA"></div>' . $separator;
echo '<div id="secondDivA"></div>' . $separator;
$content = ob_get_clean();

$sections = explode($separator, $content);
?>
<div id="firstDiv">
    <?php echo $sections[0]; ?>
</div>
<div id="secondDiv">
    <?php echo $sections[1]; ?>
</div>
于 2012-06-17T23:57:55.083 に答える
1

関連するコードを適切な場所に移動してみませんか?

<div id="firstDiv"> 
    <?php 
        echo "<div id=\"firstDivA\"></div>"; 
    ?> 
</div> 
<div id="secondDiv"> 
    <?php 
        echo "<div id=\"secondDivA\"></div>"; 
    ?> 
</div> 
于 2012-06-17T23:58:25.657 に答える
1

.phpファイルは連続しているため、2 つの個別のタグがある場合、<?php ?>同じ変数を共有できます。

 <div id="firstDiv">
 <?php
    echo "<div id=\"firstDivA\"></div>";
    $div2  = "<div id=\"secondDivA\"></div>";
 ?>
 </div>
 <div id="secondDiv">
    <?php echo $div2 ?>
 </div>

これにより、目的の効果が得られます。(変数の使用方法を示します)

于 2012-06-18T00:00:07.130 に答える
0

何を尋ねているのかわかりません。おそらく、2 番目の div に echo ステートメントを追加するだけです。

<div id="firstDiv">
    <?php echo "<div id=\"firstDivA\"></div>"; ?>
</div>
<div id="secondDiv">
    <?php echo "<div id=\"secondDivA\"></div>"; ?>
</div>

それとも、PHP の後で DIV の変更を行いたいということですか? jQueryを試してみてください!それとも、PHP が完成する前に DIV を変更したいということですか? おそらくphpQueryはあなたにとって良いでしょう。

于 2012-06-18T00:00:15.997 に答える
0

XML データ (XHTML を参照) を操作する場合は、適切な XML プロセッサを使用することをお勧めします。

DomCrawlerは DOM を操作するのに優れています。ネイティブ DOM 拡張で動作するため、高速で広く使用されています。

コンテンツを追加する方法に関するドキュメントの例を次に示します。

  $crawler = new Crawler();
  $crawler->addHtmlContent('<html><div class="foo"></div></html>');

  $crawler->filter('div')->attr('class') // returns foo
于 2012-06-18T00:02:07.847 に答える