Webサイト専門プログラマの言いたい放題

元システムエンジニアがサイト制作とプログラミングについて好き放題しゃべります。

【PHP初学者あるある「概念の見落とし」】

f:id:wp-lesson:20151012175721j:plain
ワードプレスEC-CubeなどのCMSや、ウェブサイト全般的によく使われている
プログラム言語「PHP」。
 
その基礎中の基礎を少しお話します。
 
そもそも論ですが、プログラムコードは何らかの処理をするためのものです。
 
処理をさせるには、そのプログラム言語が理解できる(知っている)命令を使って
何をして欲しいかを伝えてあげる必要があります。
  
例えばウェブページに
 

こんにちは
 
というHTMLをPHPで表示したければ、
 
▼誤

<?php 'こんにちは'; ?>

 
▼誤

<?php '<div>こんにちは</div>'; ?>

 
▼正

<?php echo '<div>こんにちは</div>'; ?>

 
このように記述せねばなりません。
 
上2つの間違い例だと、PHPは ' ' で囲まれた文字列を実行せよと言われて
いるのと同じなので、
 
「文字列を実行するとはどういうこと?」
「文字列の長さを計算すればいいの?」
「文字列を読み込めばいいの?」
「文字列を切り取って欲しいの?」
「文字列をどうして欲しいか教えてよ!」
 
と、理解することができず何もしません。
つまりウェブページには何も表示しません。
 
一方、echo を使えば、PHP
 
「echo なら知ってるよ。echo の後ろに指定された文字列をHTMLに変換して
 お返しすればいいんだよね。」
 
と理解することができるのです。
 
PHPで書いた内容はそのままではブラウザに表示されません。
 
なぜなら、ブラウザが理解できるのはあくまでもHTMLだからです。
 
いったん、PHPで書いた内容をHTMLに変換してあげる手続きが必要です。
 
そこで、ウェブページに処理の結果を返すべく、PHPには
 
「処理結果をHTMLに変換する」
 
ための関数(機能)があります。
 
それが echo という命令です。
 
読んで字のごとく、エコーするのです。
ブラウザやコンソール画面(黒い画面)に処理をした結果を表示するということ。
 
 
ものすごく基本的なことですが、文字列を指定しただけではプログラムは
動かない(何をしてよいかわからない)ということを覚えておきましょう。
 
プログラム言語と”対話”するという感覚、少しは伝わるでしょうか?