投稿する前にこれを試しました:
そして、まだそれを機能させることができませんでした。
私はこれをエコーしようとしています:
<div>
<h3><a href="#">First</a></h3>
<div>Lorem ipsum dolor sit amet.</div>
</div>
<div>
しかし、タグ「」と「」を非表示にする方法がまだ見つかりません。どうすればよいですか?
<?php
echo '<div>
<h3><a href="#">First</a></h3>
<div>Lorem ipsum dolor sit amet.</div>
</div>
<div>';
?>
単一引用符で囲んでください。
heredocベースのソリューションを試しましたか:
echo <<<HTML
<div>
<h3><a href="#">First</a></h3>
<div>Lorem ipsum dolor sit amet.</div>
</div>
<div>
HTML;
そこに与えられた最初のメカニズムを使用してそれを行います。
<?php
...
?>
<div>
<h3><a href="#">First</a></h3>
<div>Lorem ipsum dolor sit amet.</div>
</div>
<div>
<?php
...
?>
大量のHTMLを出力する場合は、 heredoc または nowdoc 構文の使用を検討する必要があります。これにより、エスケープせずに文字列を書くことができます。
echo <<<EOD
You can put "s and 's here if you like.
EOD;
また、PHPは埋め込み言語であるため、HTMLコンテンツの間に追加でき、必要ないことに注意してください。タグをエコーします。
<div>
<p>No PHP here!</p>
<?php
$name = "Marcel";
echo "<p>Hello $name!</p>";
?>
</div>
また、変数を出力するだけの場合は、簡易出力タグ<?=$var?>
を使用する必要があります。これは<?php echo $var; ?>
と同等です。
PHPがPHPコードの一部として認識しないように、"
をエスケープする必要があります。これを行うには、\
エスケープ文字。
したがって、コードは次のようになります。
echo
"<div>
<h3><a href=\"#\">First</a></h3>
<div>Lorem ipsum dolor sit amet.</div>
</div>
<div>"
HTMLをPHPから分離するのが最良の方法です。混乱が少なく、デバッグが容易です。
<?php
while($var)
{
?>
<div>
<h3><a href="User<?php echo $i;?>"><?php echo $i;?></a></h3>
<div>Lorem ipsum dolor sit amet.</div>
</div>
<?php
$i++;
}
?>
さまざまなオプションがあります。 1つはPHPをテンプレートエンジンとして使用することです。
<?php
// Draw the page
?>
<div>
<h3><a href="#">First</a></h3>
<div>Lorem ipsum dolor sit amet.</div>
</div>
<?php
// Done drawing.
?>
別の方法は、単一引用符を使用することです。これにより、二重引用符を引用符で囲まずに残し、リテラルの改行もサポートできます。
<?php
echo '<div>
<h3><a href="#">First</a></h3>
<div>Lorem ipsum dolor sit amet.</div>
</div>';
?>
別の方法は、二重引用符をそのままにして、改行をサポートし、内部の変数を展開するHEREDOCを使用することです。
<?php
echo <<<EOS
<div>
<h3><a href="#">First</a></h3>
<div>Lorem ipsum dolor sit amet.</div>
</div>
EOS;
?>
Exの場合、「<」を<
に、「>」を>
に置き換えることができます。
echo "<div>";
出力は表示されます<div>
より長い文字列の場合、関数を作成します
function example($input) {
$output = str_replace('>', '>', str_replace('<', '<', $html));
return $output;
}
echo example($your_html);
バックスラッシュhref=\"#\"
を忘れずに、または単一引用符href='#'
で行うか、str_replaceで関数内で変更することを忘れないでください。
タグを使用するだけでecho sirを使用する必要はありません。ようこそ :)
<plaintext>
<div>
<h3><a href="#">First</a></h3>
<div>Lorem ipsum dolor sit amet.</div>
</div>
ここで、行ごとにコードを追加しました。バックティックは、複数の行コードをエコーするのに役立ちます。
$html = '<div>';
$html .= '<h3><a href="#">First</a></h3>';
$html .= '<div>Lorem ipsum dolor sit amet.</div>';
$html .= '</div>';
$html .= '<div>';
echo $html;
これは二重引用符でも正常に機能します。 echo二重引用符付きのhtml_tagには、1つだけ覚えておく必要があります。中に他の二重引用符( ")を使用しないでください。
<?php
echo "
<div>
<h3><a href='https://stackoverflow.com/questions/3931351/how-to-echo-in-php-html-tags'>First</a></h3>
<div>Lorem ipsum dolor sit amet.</div>
</div>
<div>";
?>
ここで、php echo内のリンクが一重引用符で囲まれていることに注意してください。これは、この目的のために二重引用符を使用する際の注意事項です。