PHPをなぜhtmlに組み込んで使っている人がいるのかよく分かりません。
プログラミング初心者です。
PHPって、「クライアントとサーバー上のさまざまなリソースを仲介するCGIプログラム」を作成するための言語ですよね?
元来CGIというものは、サーバー側の処理を書いた、サーバーのマシンが実行するプログラムであるから、サーバーの中に独立して存在するプログラムであるはずです。
###php in htmlの場合
これが分かりません。
クライアント=ブラウザ側のプログラムはJavaScriptが受け持つはずです。
なのに、phpをまるでJavaScriptのようにhtmlに組み込んで使っている人がいます。
phpを実行するのはあくまでサーバー側のマシンですから、
php in htmlの組み合わせだと、サーバーが持っているhtmlファイルに対して、
サーバーマシン君がインターネット回線の向こう側からフラフラとやってきて、phpの記述の部分だけ横槍を入れる形で操作してくる、
というイメージになると思います。
操作主体がブラウザで完結しているJavaScript in HTMLという組み合わせにせず、あえてphpをhtmlに組み込む意味がわかりません。
html in phpの場合
これは分かります。
ただ、別の疑問があって、
phpでechoを使うと、なぜかサーバーマシンのコンソールでなく、ブラウザ上に文字列が表示されますが、これは、サーバーマシンがHTML文書を作成してブラウザに送信している、ということでしょうか?
つまりechoとは、「HTMLを作成し、ブラウザに送信するメソッド」ということでしょうじゃ?
また、phpの内部にhtmlを組み込んでいるものもありますが、それは、
「phpの内部でhtmlタグを宣言すると、htmlファイルが作成され、それがブラウザに送信される」ということが起きているのでしょうか?
ご回答よろしくお願いします。
それぞれの役割
それぞれの言語の役割はこんなイメージで合っているでしょうか?
Edge「僕の名前はMicrosoft Edge。来月の妹の誕生日パーティーのために会場を探しているんだ。」
Edge「友達の『Webサーバー君』が、色んな施設の会場の貸し出し事業をやっているから、彼から部屋を借りようと思うんだ」
Webサーバー「なぁedge、このタイプの部屋はどうだい?index.htmlってプランなんだが…」
Edge「うーん…まぁ広さ的にも値段的にもいいし、レイアウトもなかなかだね。これにするよ!」
Webサーバー「よし!じゃあ、第3会場を押さえておいたから、それを使いなよ」
Edge「ありがとう」
〜〜〜
Edge「うーん、このindex.htmlっていう会場、誕生日パーティで使うにはちょっと殺風景だよなぁ…」
Edge「よし、友達のJavaScriptくん、CSSちゃん、canvasくん達を呼んで装飾やってもらおう!彼らそういうの得意だから」
〜〜
JS「Edgeくん、きたよ〜」
CSS「もう、急に呼び出すんだから、Edgeったら」
canvas「さあ、僕らデザイン三銃士が来たからにはもう不可能はないぞ」
Edge「わ〜!みんな集まってくれてありがとう!」
CSS「で、あたしらは何をすればいいの?早く教えなさい」
Edge「ここの椅子をもっとこう…あそこにこの装飾をして欲しくて…それで…」
ガチャ…
index.php「さーせーん!今回会場のデザインに伺いましたindex.phpと申しますが〜」
Edge「え、君たちは?」
index.php「ああ、あっしらはWebサーバー株式会社の社員で、php部署のものでさぁ」
index.php「お客様がご利用の貸し出しプラン『index.html』は、あっしらでお部屋の装飾をしてさしあげるサービスが付いておりましてね、それで伺いました」
CSS「え!?どういうことよそれ?」
Edge「し、知らなかった…」
index.php「まぁとにかく、この部屋の装飾はあっしらにお任せくだせぇ!皆さんはどうぞ、パーティの時間までおくつろぎを。よーし!オマエらはじめっぞ〜〜!」
index.php子分「「押忍!!」」
タッタッタッタッ…
JS「暇になっちゃったね…ははは」
CSS「もう、せっかく張り切ってたのに…誰かさんのせいで!」ギロッ
Edge「ごめんよ〜みんな…phpなんてサービスあるなんて聞いてなかったんだ」
canvas「まぁまぁ、時間ができたことだし、近くのカフェで一服お茶でもしようじゃないか」
Fin
こういう感じで合っていますか?
回答7件
あなたの回答
tips
プレビュー