あなたがやりたいことは、ファッションで可能です。
HTML のブロックを単純に php 変数に割り当てたり、関数で割り当てることはできません。ただし、希望する結果を得る方法はいくつかあります。
- テンプレート エンジンの使用を調査します (とにかく価値があるので、これを行うことをお勧めします)。私はsmartyを使用していますが、他にもたくさんあります
- 2 つ目は、出力バッファーを使用することです。
あなたが抱えている問題の 1 つは、ページにある HTML がすぐにクライアントに送信されることです。これは、php で変数として使用できないことを意味します。ただし、関数 ob_start および ob_end_fush を使用すると、必要なものを実現できます。
例えば
<?php
somesetupcode();
ob_start(); ?>
<html>
<body>
html text
</body>
</html>
<?php
//This will assign everything that has been output since call to ob_start to your variable.
$myHTML = ob_get_contents() ;
ob_end_flush();
?>
これが、php ドキュメントの出力バッファを読むのに役立つことを願っています。