0

PHPで書かれたページがあり、PHPがそれを書いた後、HTMLソースコードを検索して特定のタグを見つけられるようにしたいと思います。これは不可能/賢明ではありませんか?

すべてが技術的にすでにHTMLに書き込まれているときに、スクリプトの最後でfile_get_contentsを使用してみましたが、その方法で一時的にページが壊れた可能性があります(ホストのリソース制限に達します)

私の主な目標は、Javascriptを使用してページの要素を1つずつ変更する方法を理解することです。変更しようとしているhtmlタグを見つけることができれば...PHPが書いた...同じページでこれを実行できると思います。

あなたが見るJavascriptに非常に新しい。

4

4 に答える 4

1

jquery を使用すると、クライアント側でこれをかなり簡単に行うことができます。

サーバー側でphpを使用して処理する必要があり、コードの生成中に絶対に処理できない場合は、ob_start()を使用して出力をキャプチャし、ob_get_contents()を使用して文字列にドロップしてから、ob_end_clean()を実行できます。ブラウザにフラッシュします。

于 2012-05-04T21:12:50.697 に答える
0

ほとんどのブラウザーでは、レンダリングされた Web ページを右クリックして、[ソースの表示] のバリエーションを選択するだけです。または、ページのコンテンツをcURLして、テキスト ファイルとして表示することもできます。

また、file_get_contents();ページ/ファイルのコンテンツを取得するための新しいリクエストを作成します。したがって、ページをロードし、下部でページのコンテンツを取得しようとすると、新しいページがロードされ、次に別のページが永遠にロードされます。ホスティング プロバイダーの指示に従って、無限ループを作成し、割り当てられたリソースを使い果たしています。

于 2012-05-04T21:13:16.430 に答える
0

私が間違って理解していなかった場合、ページがロードされた後、独自のhtml出力を変更したいので、

<?php
 echo "<div id='mydiv'></div>";
?>
<script type="text/javascript">

      window.onload = function() {  
        document.getElementById("mydiv").innerHTML = "updated html";  
      }  

</script>
于 2012-05-04T21:17:14.530 に答える
0

ページを生成するときに出力をキャプチャしない限り、たとえば

<?php

ob_start();
.... page building here ...
$page = ob_get_clean();
echo $page;
?>

あなたが取り組むことは何もありません。ただし、上記のようにキャプチャする場合は、単純に $page をDOMにフィードして、そこで操作することができます。

しかし、ここで疑問が生じます... 作成後にページを変更する必要がある場合は、最初のページの作成方法を変更してみませんか?

于 2012-05-04T21:19:01.487 に答える