0

コード内で PHP を HTML からできるだけ分離する必要があると 2 回尋ねたところ、回答がありました。使用する代わりに:

<?php
echo "<p>The value of x is $valuex greater.</p>";
?>

私が使用すべきこと:

<p>The value of x is <?php echo $valuex; ?> greater.</p>

形式以外に知っておくべき違いはありますか?

4

7 に答える 7

1

PHP のユニークな点の 1 つは、サーバー側言語テンプレート言語の両方の目的を果たすことです。理想的には、コードはコントローラーとビューに分離されます。コントローラーは純粋なPHP (HTML なし) であり、ビューはほとんどがHTML (最小限の PHP を含む) です。コントローラーを作成する場合、PHP は他のサーバー側言語とまったく同じです。しかし、ビューを作成しているときは、PHP がテンプレート言語になり、その場合は HTML が支配するはずです。

2 つを分離するもう 1 つの正当な理由は、構文の強調表示です。最初の例では、ほとんどの編集者は文字列内のテキストが実際には HTML であることを認識していないため、構文の強調表示を適用することを知りません。これは、コードが本来よりも読みにくくなり、その後の開発者の生活が困難になることを意味します。

于 2013-05-27T06:13:12.713 に答える
1

違いは次のとおりです。

<?php $valuex = 6; ?>

<p>The value of x is <?php echo $valuex; ?> greater.</p>

ここでは、php 変数部分のみをエコーする必要があります。

<?php
echo "<p>The value of x is $valuex greater.</p>";
?>

ここでは、部分全体をエコーする必要があります。

于 2013-05-27T06:14:06.857 に答える
0

その理由は、率直に言って、常にできるだけ柔軟に対応したいからです。ただし、php と html を混在させると、php コアがテンプレートと混同されるため、さまざまなテンプレート/言語などを維持、変更、提供するのが非常に難しくなります。したがって、常に離しておいてください。

于 2013-05-27T06:15:13.420 に答える
0

コードを分離すると、HTML と PHP の両方のコードを保守するのがはるかに簡単になります。

于 2013-05-27T06:15:16.857 に答える
0

どちらの場合も、出力は同じになります。

最初の例は、HTML コードを出力する PHP です。2 番目の例は、PHP を含む HTML コードです。「理想的な」例は次のとおりです。

<p>The value of x is <?=$valuex?> greater.</p>
于 2013-05-27T06:14:27.920 に答える
0

最初のものでは、構文を次のように変更します

<?php
   echo "<p>The value of x is ".$valuex." greater.</p>";
?>

そして2番目のものでは、次のような値をエコーするように変更します

<p>The value of x is <?php echo $valuex; ?> greater.</p>

しかし、両方の表記法は同じであり、同じように機能します

于 2013-05-27T06:14:48.397 に答える