• ベストアンサー

htmlにphpを埋め込むと書いてあるんですが、

htmlにphpを埋め込むと書いてあるんですが、 これはエディターなどでhtmlのメモ帳?の中にphpのコードを書き込んでも 自動的にhtmlに変換されるということなんですか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.8

変なタイミングで回答してしまい、混乱をさせてしまったようであれば申し訳ございません。(回答No.6の件) ご質問本文から引用して回答してみます。 【1】「htmlにphpを埋め込む」とは ここでいう、htmlは、HTML言語で書かれたソースコードの中に、PHP言語でかかれたソースコードを埋め込む、というのが丁寧な書き方になります。 PHP言語とは、「<?php」からはじまって「?>」で終わるところまで、または「?>」を閉じなければファイルの終端まで、がPHP言語のソースコードです。 【2】「htmlのメモ帳?」について こちらの「htmlのメモ帳?」という表現は曖昧過ぎるので、以下のように表現されるものと解釈します。 "拡張子が.htmlとなっているソースコードが記述されたファイル" 【3】「htmlのメモ帳?の中にphpのコードを書き込んでも自動的にhtmlに変換される」のか "自動的に変換する"の主語によります。主語が"phpコマンドが"ということであれば"自動的に変換する"というのは概ね間違っていません。 phpコマンドについては、私の「回答No.6」や、AsarKingChangさんの「回答No.4」でお伝えしたようなものになります。 主語が"Webサーバが"の場合は、通常であれば(特別な設定をしていなければ)、 拡張子が「.html」となっているファイルは、HTML言語として認識してしまいますので、"Webサーバは自動的に変換しません"。 そのため、「htmlにphpを埋め込む」とは言っていますが、拡張子が「.php」となっているファイルに記述する必要があります。 そうすると"Webサーバは自動的に変換をします"。 【4】余談 - 拡張子「.html」や拡張子「.php」について 拡張子はあくまで、ファイルの中に何が書いてあるかを推測する(わかりやすくする)為に付けただけのファイル名称です。 VSCodeも、「.php」がついているファイル名だからきれいに色分けしているだけで、拡張子が「.waaaa」がついているファイル名にPHP言語のソースコードを書いてもよいです。 色分けや便利な機能が使えなくなるだけで。(困りますけど) Webサーバも「.php」がついているファイル名だから"自動的に変換"して画面に出力してくれるだけで".waaaaa"という拡張子にした場合、 "変換はされず"にソースコードのまま、画面に出力されるだけです。(困りますけど) そして、他のスクリプト言語の場合、言語の名前と一般的に使われる拡張子も同じ名称ではないものが多いです。 Ruby言語なら「.rb」 Perl言語なら「.pl」 Python言語なら「.py」 といった具合に。 【5】教えていただきたいこと この回答までの間にみんなが回答しているもので、「わかったこと」、「わからないこと」は現状どのようなものがありますか。 今回の質問は素朴な疑問のわりに、様々な前提知識が必要な内容になりますので、具体的に教えていただければ解決につながるのではないかと思います。 よろしくお願いいたします。

okwaveokw
質問者

お礼

ありがとうございます 一端質問を閉じさせていただきます

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (7)

  • t_ohta
  • ベストアンサー率38% (5096/13324)
回答No.7

PHPは元々HTML文章の中にプログラムを記述する方式のプログラミング言語です。 PHPのプログラムが記述されたファイルはWebサーバ内で実行されて、PHPで記述された部分が実行結果に書き換わり、Webサーバへ引き渡され、引き渡されたデータをWebサーバがブラウザへ送ります。 そのため、ブラウザがWebサーバから受け取ったデータ(HTML)にはPHPのプログラムは書かれておらず、HTML形式に変換された結果だけが渡されます。 なので、プログラムが実行されるのはWebサーバ上ですので、エディターでプログラムを書いただけでは実行されず、HTMLにも変換されません。 PHPのプログラムがHTMLに書き換わるのはWebサーバでプログラムが実行(ブラウザからリクエスト)された時です。

okwaveokw
質問者

お礼

ありがとうございます

全文を見る
すると、全ての回答が全文表示されます。
回答No.6

PHPはインタプリタなので、コンパイルを行いません。 なので、PHPはテキストエディタなどで入力した後、PHPコマンドにファイルを渡してやると、インタプリタが内容を実行します。 例)コマンドプロンプトでPHPを実行する >php test.php このようにするとtest.phpの中身をphpのインタプリタが1命令ずつ解釈して実行して行きます。 というのが前提にありますが、ここまではご理解いただいていますか。 そのうえで、上記の例のようにtest.phpに、以下のように記述する test.php------------------------------- こんにちは世界 ------------------------------------------ これを実行していただくと、出力結果として「こんにちは世界」と表示されるかと思います。 それが確認できたら、以下のように変更してみる test.php------------------------------- <?php $name = '太郎'; ?> こんにちは<?php echo $name ?> ------------------------------------------ これを実行すると「こんにちは太郎」と表示されることと思います。 この観測結果から、PHPのインタプリタは渡されたファイル内の「<?php」からはじまり「?>」で終わる部分だけをPHPとして解釈していて、それ以外の部分が書いてある通り表示(標準出力)されることが推測できると思います。 これを確認したうえで添付いただいている画像を見ていただければなんとなく言わんとすることがわかるのではないでしょうか。

okwaveokw
質問者

お礼

全然わかりません ありがとうございます 初心者です

全文を見る
すると、全ての回答が全文表示されます。
回答No.5

phpの構文がhtmlから一部借用されているだけの話で、 目的としてはシームレスにwebページを記述できることがありますが、 そんな事言っては居られない事態になってます。 でも、phpは特段優秀な言語ですので、 困惑せずに、着実に記述しテストし、動作させるように 邁進して頂きたいと思います。

okwaveokw
質問者

お礼

ありがとうございます

全文を見る
すると、全ての回答が全文表示されます。
回答No.4

".html"や".php"が HTMLやPHPと無関係であることを画像にして、投稿しておきますね。 画像にあるファイルは、「すべて内容は同じ」です。 しかし拡張子を別にしても結果は一切変化していない。 =つまり変換はしていない!  ただ、その場に展開されただけにすぎません。 なので、ApacheがPHPパーサーを通す条件がPHPファイルだけなら PHPファイルだけがパースされるというだけのことで、 それ自体はいかなる変換もしていないのです。

okwaveokw
質問者

お礼

全然わかりません ありがとうございます

全文を見る
すると、全ての回答が全文表示されます。
回答No.3

>vscodeでphpのプログラミングをするときに、最初にファイル形式を .php >としてファイルを作ってその中にphpのコードを書かないといけないですよね? >htmlに埋め込めるということは、html形式のファイルの中に >phpを書いてもphpが使えるということなんですか? パーサーのデフォルトが".php"なだけで、 ".html"もPHPを通すようにすれば、".html"でも、 PHPは実行されます。 なお、".html"と”HTML"は違います。 前者は「拡張子」にすぎません。 >原点とは? PHPやPerlはサーバーサイドスクリプトだという意味です。 >>PHPが処理した結果が、その位置に反映されてるんです。 >HTMLとは限りません。 その通り、HTMLとは限りません。 JavaScriptを送ればJavaScriptです。 いかなる変換もしていません。 ただPHPを実行した結果がその位置に反映されているだけの事です。 >>PHPがHTMLを吐き出しただけの事です。 >あの画像には変換、埋め込む と書いてあります その通りです。 埋め込まれただけで、変換はされていません。 echoの中身が変化してはいませんよね? その位置に展開されただけです。 JavaScriptを展開すればJavaScriptになりますし。 画像を展開させればそれは画像になります。 ただし、MIMEが違うので、画像だと認識させるには 適切なContent-Typeを設定する必要があります。 例:HTMLの場合は Content-Type: text/html です。

okwaveokw
質問者

お礼

なお、".html"と”HTML"は違います。 前者は「拡張子」にすぎません。 ではHTMLはなんですか?

全文を見る
すると、全ての回答が全文表示されます。
  • agehage
  • ベストアンサー率22% (2564/11419)
回答No.2

htmlはhtmlですので、そもそもphpではありません htmlの中にphpを書いても何も起こりません htmlの内容を含むphpのなかでは、そのように処理されます 何を言われてるかわからないと思います 今はあまり気にせず、もう少し勉強してみるとわかると思います

okwaveokw
質問者

お礼

htmlの中にphpを書いても何も起こりません phpの中にhtmlの場合はどうなりますか?

全文を見る
すると、全ての回答が全文表示されます。
回答No.1

原点に戻ってますね。質問が! まず、PHPはサーバーサイドスクリプトです。 だから、PHPが処理した結果が、その位置に反映されてるんです。 HTMLとは限りません。 PHPでJavaScriptを吐き出したらそのJSファイルはJSです! PHPでJPEG画像を送り出せばそのファイルはJPEGですから。 HTMLに変換したのではなく、 PHPがHTMLを吐き出しただけの事です。

okwaveokw
質問者

お礼

vscodeでphpのプログラミングをするときに、最初にファイル形式を .php としてファイルを作ってその中にphpのコードを書かないといけないですよね? htmlに埋め込めるということは、html形式のファイルの中に phpを書いてもphpが使えるということなんですか?

okwaveokw
質問者

補足

原点とは? >PHPが処理した結果が、その位置に反映されてるんです。 HTMLとは限りません。 どういう意味でしょうか? >PHPがHTMLを吐き出しただけの事です。 あの画像には変換、埋め込む と書いてあります

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • PHP用エディタ

    ふつうにメモ帳で拡張子phpをつくれるかと思っていたら当然のごとくできなくてこまってます。 PHP用エディタでフリーのものってありますか?

    • ベストアンサー
    • PHP
  • 自動的にコードを生成してくれるPHPエディター

    タイトルの通り、自動的にコードを生成してくれるPHPエディターを探しています。 イメージ的にはDreamweaverのサーバービヘイビアのように、 値を入力したり、選んだりするだけで、 レコードの挿入や レコードの表示といった よく使うコードを自動生成してくれるものです。 ご存じの方いましたら、教えてください。

    • ベストアンサー
    • PHP
  • Perlコードを、自動的にPHPコードに変換してくれるプログラム!

    Perlコードを、自動的にPHPコードに変換してくれる、そんな「ドラえもん」のようなプログラムがありましたら教えて下さい! もちろん、変換後のコードが完全なPHPコードでなくても、大体、関数とか、変数、その他の定型ルーチンの違いを置き換えてくれる程度のもので結構です。 その他、何か、そういったPerlからPHPへの乗り換え支援ツール見たいなものがあったら教えて下さい。

    • 締切済み
    • PHP
  • PHPの文字コードどのように設定すればいいですか?

    PHPをテキストエディタ(TeraPad)で、書こうとしているのですが、文字コードの設定がわかりません。 初期文字コード SHIFT-JIS JIS EUC Unicode UTF-8 UTF-8N いろいろあってどれを選んだらいいのかわかりません。 今はSHIFT-JISにしてます。 保存文字コード 自動 今は自動にしてます。 初期改行コード CR+LF 今はCR+LFにしてます。 保存コード 自動 今は自動にしてます 間違っている、又はこちらのほうがいいというのがありましたら是非教えてください。よろしくお願いします。

    • ベストアンサー
    • PHP
  • PHP記述に便利なソフトを教えて下さい。

    現在PHPを勉強し始めて間もないのですが、PHPを記述するのに便利なソフトがありましたら教えていただけないでしょうか? 今は普通のテキストエディタ(メモ帳)を使っていますが、とっても不便なような気がします。 私はFlashも勉強しているのですが、フラッシュはコードが色分けされていたりして記述しやすくなっています。 私が持っている書籍では秀丸が便利とあったのですが、もっと便利な物があれば、フリー、シェア問わず教えて下さい。よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • 急いでます PHPの編集用エディタは何を使えばいいんでしょうか?

    いまCGIを改造してます。 改造といっても管理人パスワードを設定するだけですが、 メモ張でひらいても変な文字しか出てきません。 エディタは何を使えばいいんでしょうか? perlはやった事ありますが、PHPは初めてです。 今回はPHPを使います。 急いでます、お願いします。

    • ベストアンサー
    • PHP
  • apacheでPHPの文字コードの認識について。

    とんちんかんな事を聞いているのかもしれません。 人様の質問に回答した際、分からなくなったのですが・・・。 Apacheってどうやって、PHPの文字コードを判断しているのでしょうか? いろいろな文字コードがあると思いますが、PHPなら、まぁ、SJISとEUCでしょう。 そもそも文字コードは、コードを考えた人が、ここの位置にはこの文字を、っていうお約束ですよね。 とうぜん、コードによって違うので、コードを間違えると文字化けが起こります。 これはブラウザーでも、テキストエディターでも、文字化けが起こります。 ここまでは、知っている知識です。 oeditというエディタは、私が使った中で文字コードの間違いが少ないですが、書かれている内容が短いとコードの自動認識が、うまく働かず、コードを間違えて読むこともあります。(体験 ということは、画像のようにこれはJpegとかGifとか、テキストの見えない部分に書かれてないと言うことでしょうか?(推測 もしそうなら、ApacheはどうやってEUCか、SJISか、他のコードかを区別しているのでしょうか? ローマ字は平気だけど、日本語は文字化けますよね。 たとえば、EUCで書かれているけど、Apacheでご認識してしまって、スクリプトは問題ないのに、エラーが起きることがあるのでしょうか? そもそもApacheはどうやって、文字コードを認識しているのでしょうか?

  • PHPが動きません。

    http://pbs.darkgray.net/ の中にある「Lreverse」PHPスクリプトについて教えてください。 さくらインターネット(スタンダード)とロリポップで動きません。 同じものがCsideネットでは問題なく動くのですが… またこのPHPの作者はさくらインターネットのようです。 何か設定を変えたら動くのでしょうか? パーミッションは元々そのままでと書いてありますが、いろいろといじってみても動きませんでした。 FAQにあるように、文字コードも変換してみたのですが、うまく行きません。 どうぞよろしくお願いいたします。

  • PHPの文字コード

    PHP初心者です。 環境【WinXP、PHP5、Apache2、エディタはDreamWeaverかPHPエディタ】 あまり詳しくないので、まず文字コードが今ひとつわかりません。 参考書などでPHPはEUCで記述と書いてあるので、エディタの設定で文字コードをEUC,改行コードをLFに設定しています。 ホームページを作成していた時には、metaタグに文字コードを打っていますが、プログラムの場合必要ないんですか?普段はShift-JISで入力しています。それともmetaタグの文字コードをEUCにしなければいけないのでしょうか? 現在、初めて更新履歴を作成しています。PHPファイルをEUCで作成し、テキストファイルをShift-JISで作成したのですが、うまく表示できませんでした。色々試して、PHPもテキストもShift-JISで作成したら、一応表示されたものの、たまに¥マークが勝手に入ってしまいます。 通常Windows環境でPHPファイルを作成する時の文字コードを教えてください。また、この場合はサイト全体(htmlファイルなど)のmetaタグの文字コードはどうしたらよいのでしょうか? よろしくお願いいたします。

    • ベストアンサー
    • PHP
  • PHPでウェブ上のファイルを編集したい

    こんばんは。PHPを勉強しようとしている素人です。 下記サイトのサンプルコードを使用して、テキストエディタを作ってみたのですが、 「<」や「""」を入力して保存すると、もう一度開いたときに 「&lt;」や「&&quot;」などに変換されてしまいます。 簡単な.jsファイルを編集したいのですが、これでは上手くいきません。 入力したデータをそのまま保存する方法があれば教えてください。 サイト:http://ponk.jp/old/php_file/index.php?page=6

    • ベストアンサー
    • PHP