2016-10-17 19 views
-1

ファイルの種類が異なる同じコンテンツの出力が異なるのはなぜですか?以下同じ内容については

<html> 
<body> 
<?php $name="jhon"; ?> 
    <table> 
     <tr> 
      <td>name</td> 
      <td><?php echo $name;?></td> 
     </tr> 
    </table> 
</body> 
</html> 

1.これをtest.phpとして保存するには、firefoxでの出力は次のようになります。

name jhon 

2.これをtest.htmlとして保存するには、firefoxでの出力は次のようになります。

name  

異なるファイルタイプの同じコンテンツの出力が異なるのはなぜですか?

+0

php-fileはphp-engineに渡され、実行されます。他のすべてのファイルは静的ファイルとみなされ、操作なしでクライアントに渡されます。ページソースを見ると、PHPコードが表示されます。これは基本的にWebサーバー101です –

答えて

0

*.phpファイルをPHPインタープリタを介して渡すようにWebサーバーを設定しているため、PHPファイルに含まれるPHPを実行します。 (you can configure it to do soが)

HTMLファイルは、あなたのウェブサーバ上でそのように設定されていません。それはサーバーでは、単純なHTMLドキュメントであり、そのまま返していると考えています。ブラウザは、PHPオープン/クローズタグをHTMLタグとして解釈しています。 (ソースを表示し、あなたのPHPコードは、ソースにを示しているかどうかを確認してみてください)で行います。 PHPスクリプトがあなたがでAddTypeのステートメントを追加する必要がありますよう

1

あなたはhtml拡張子で保存した場合、サーバーは前処理しません、それ、PHPブロックが評価されないようにします。つまり、実際の名前を含む2番目のタグは作成されません。

.phpの拡張子は、ファイルを経由してクライアントにファイルを送信する前に何らかの含むPHPを実行するには、サーバーに指示します。

0

あなたのWebサーバ(Apacheの等)は(.htmlファイルを言う)、他のスクリプトを実行するためには、デフォルトの設定AddType application/x-httpd-php .php

あたりとしてのみ.phpファイルを識別し、評価することができます以下のようなhttpd.confファイル(Webサーバーを再起動してください):

AddType application/x-httpd-php .html 
関連する問題