ホームページ  >  記事  >  バックエンド開発  >  なぜhtmlとphpが混在しているのでしょうか? HTMLとPHPを混合する4つの方法

なぜhtmlとphpが混在しているのでしょうか? HTMLとPHPを混合する4つの方法

怪我咯
怪我咯オリジナル
2018-05-11 16:26:0631756ブラウズ

以下のエディターは、PHP/HTML 混合記述の 4 つの方法の概要を示します。編集者はこれが非常に良いものだと思ったので、皆さんの参考として今から共有します。エディターをフォローして見てみましょう

PHP はバックエンド言語であり、ブラウザーに表示するためには HTML コードを出力する必要があります。以下に 3 つの PHP/を紹介します。私が使用したHTMLの混合コーディング方法

1. シングルクォーテーション・ダブルクォーテーションで囲む方法

使い方は以下の通りです

<?php
 echo &#39;
 <!DOCTYPE html>
 <html>
   <head>
     <title> </title>
   </head>
   <body>
     <span>测试页面</span>
   </body>
 </html>
 &#39;;
?>

で直接ラップする方法です。一重引用符 そのまま実行してください

二重引用符と一重引用符の違いは、前者は引用符内の変数を解析するのに対し、後者は引用符内の変数を解析しないことです。以下の例を参照してください。

<?php
 $Content=&#39;Hello!&#39;;
 echo "$Content";
 echo &#39;<br>&#39;;
 echo &#39;$Content&#39;;
 ?>

output

1 Hello!

2 $Content

二重引用符で囲まれた文字列内の

変数名は自動的に変数値に解析され、単一引用符で囲まれた場合は変数値に変換されることがわかります。変数名

のような記述には 2 つの欠点があります

1. 出力内容に一重引用符または二重引用符が含まれている場合、PHP はその引用符が属するかどうかを判断できないため、処理が非常に困難になります。プログラムまたは出力コンテンツに追加すると、エラーが報告されます

2. このようなモダンなテキストを作成します

Editor (SublimeText など) は、引用符で囲まれた出力コンテンツに構文色を付けることができません。フォーマットに問題がある場合、それを検出するのは非常に困難です。画像はSublimeText3のスクリーンショットです

2. HEREDOC/NOWDOCの使用

HEREDOCとNOWDOCはPHP5でサポートされています。 .3 プログラム内のテキストを囲むためにカスタム識別子を使用できるようにする新機能。HEREDOC と NOWDOC の関係は、二重引用符と一重引用符の関係に似ています。後者はブロック内の変数を解析しません。ブロック内の変数

HEREDOC と NOWDOC の使用法は以下で紹介されています

<?php
 $Content=&#39;Hello!&#39;;
 
 //下面写出了一个HEREDOC,其中标识LABEL可以自定义为任何字符串,但要保证开头的标识和结尾的标识一样
 echo <<<LABEL
 $Content
 LABEL;
 //结尾的方法:另起一行,打上LABEL。注意结尾的标识前面和后面不要插入任何字符,空格也不行
 
 echo &#39;<br>&#39;;//为了演示方便换行
 
 //NOWDOC和HEREDOC的书写方式差别在于NOWDOC的标识符需要用单引号包围
 echo <<<&#39;LABEL&#39;
 $Content
 LABEL;
 //其他无异
 
 ?>
これら 2 つについては、PHP.net の wiki を参照することもできます:

https://

wiki.php .net /rfc/heredoc-with-double-quotes HEREDOC/NOWDOC を使用して記述すると、引用符で囲まれる問題は完全に解決されますが、無効な構文の色付けの問題はまだ解決されません

3. HTML に PHP プログラム ブロックを埋め込む(推奨)
これは非常に適した方法であり、この方法は

WordPressテンプレート

などの状況で広く使用されています。また、以下に示すように、出力する必要がある場所に関連するコードを直接記述するだけでも便利です

<?php
 
 //首先在这里写好相关的调用代码
 function OutputTitle(){
   echo &#39;TestPage&#39;;
 }
 function OutputContent(){
   echo &#39;Hello!&#39;;
 }
 
 //然后再下面调用相关函数就可以了
 ?>
 
 <!DOCTYPE html>
 <html>
   <head>
     <title><?php OutputTitle(); ?></title>
   </head>
   <body>
     <span><?php OutputContent(); ?></span>
   </body>
 </html>
この方法は 3 つの方法の中で最も優れていると思いますが、この方法の欠点は、このようなコード ブロックが多すぎると、プログラムの読み取りに重大な影響を及ぼします。

4. フロントエンドテンプレートエンジンを使用する Web開発全体におけるフロントエンドの重要性が高まっているため、現在、フロントエンドエンジニアとバックエンドエンジニアは徐々に2つの職種に分かれています。フロントエンド/バックエンドのエンドエンジニアが互いに協力して、フロントエンド開発とバックエンド開発によって開発されたものをより完璧なものにするために、一連の

フロントエンドテンプレート

エンジンが徐々に生成されました、スマーティなど。 Smarty を使用して記述された実装コードは非常に読みやすいため、フロントエンドとバックエンドの分離がより効率的かつ便利になります。興味のある学生は検索して見つけてください

以上がなぜhtmlとphpが混在しているのでしょうか? HTMLとPHPを混合する4つの方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。