こんにちは、妻が臨月を迎えいよいよ父になる日が近いArt Directorの奥田です。
さて、今回は「いまさら?」というような内容にはなりますがPHP入門ということでPHPのことを簡単に解説したいと思います。
自分自身もすべてを理解できているわけではないので、すべては網羅できないとは思いますが、この記事で皆さんに少しでもプログラミングに興味を持っていただけたらなと思います。
Table of contents
そもそもPHPとは?
そもそもPHPってなんなんでしょう?
以下が公式マニュアルに記載された説明文です。
PHP (PHP: Hypertext Preprocessor を再帰的に略したものです)
は、広く使われているオープンソースの汎用スクリプト言語です。 PHPは、特にWeb開発に適しており、HTMLに埋め込むことができます。
http://php.net/manual/ja/intro-whatis.php
「ふむふむ、なるほどわからん」といった感じでしょうか?
イメージはこんな感じです。
<!DOCTYPE HTML> <html> <head> <title>Example</title> </head> <body> <?php echo "Hello World!"; ?> </body> </html>
上記はHTMLのbodyタグ内に「Hello World!」と出力される簡単な例です。(echoは文字を出力するときに使います)
PHPとは<?php から ?>で書かれた部分で動作します。
導入が比較的簡単で学習コストも少ないこともあり、今ではWordPressをはじめ、様々なアプリケーションに使用されています。
クライアントサイドスクリプトとサーバーサイドスクリプト
Webでよく使われているプログラミング言語といえばJavaScriptですが、PHPとJavaScriptには大きな違いがあります。
それは実行される場所です。
JavaScriptはクライアントサイドスクリプトと呼ばれ、皆さんが今見ておられるブラウザで動作します。
よってそのWEBサイトを閲覧できる人であれば誰でもそのコードを確認することができます。
PHPはサーバーサイドスクリプトと呼ばれ、WEBサーバーで動作します。
サーバー内で動作し出力されるため、クライアントはコードを確認することができません。
PHP | JavaScript | |
---|---|---|
動作する場所 | サーバーサイド | クライアントサイド |
コードの確認 | できない | できる |
表示したあとの処理 | できない | できる |
PHPでできること
上記表を見ると「できない」が連続していて使えない子みたいになっていますがそんなことはありません。
PHPができることの代表的なものを上げてみました。
動的なHTMLの生成
今日の日付を取得して出力するなど、動的に何かしたいときHTMLではうまく行きません。
そんなときPHPであれば簡単に実装できます。
データベースとの連携
PHPがもっとも得意とするのがデータのやり取りです。
CMSやECサイトなどデータベースへデータを保存しておいて、取り出してうまく出力してくれるのがPHPの役目です。
もちろん当サイトもWordPressを使い、PHPで動いています。
クライアントから送信されたデータのやり取り
皆さんもお問合わせやブログの投稿などでWEBサイトのフォームを利用したことがあるのではないでしょうか?
PHPでは送信されたデータを使ってメールを送信したりファイルを保存したりいろんなことができます。
他にもcurlといって外部サイトにアクセスしたり、画像を加工処理したりもできる「できた子」です。
PHPに必要なもの
PHPを実行するには、PHPがインストールされたWebサーバーが必要です。
通常のレンタルサーバーであればほとんどのサーバーにPHPがインストールされていると思います。
ローカル環境でテストしたい場合などにはXamppやMampといったソフトで簡単にローカル開発環境が構築できます。
弊社ではVagrantを使用しています。
基本的な構文
基本的には先程も説明しましたが、<?php から ?>で囲まれた部分でPHPが動作します。
<?php ?>
コメント
プログラミングにはコメントを書いてそこに何を記述しているのかを書き記しておく場面が多々あります。
PHPでは以下のようにしてコメントを記述できます。もちろんコメントになっている箇所は何も実行されません。
// と #は1行コメントとなり、複数行コメントをする場合は/* から */で囲います。
<?php // コメント # コメント /* * ここもコメントになります。 */ ?>
変数
変数とは名前のつけられる箱のようなもので、複数回同じ記述が登場する際や、その箇所の変更が入る際に一箇所で管理できるようになる大変便利なものです。
変数は必ず「$(ダラー)」から始まる文字列というルールがあります。
<?php $foo = "bar"; // $(ダラー)fooに文字列"bar"を代入。 ?>
デバッグ
変数など中身が不明なものの値がどういったものなのかを確認する必要があるときにvar_dumpを使います。
結果が出力され値がどういったものなのかがわかりやすく表示されます。
<?php $foo = "bar"; var_dump($foo); // 結果 string(3) bar ?>
出力
文字を出力する場合はecho文もしくはprint文を使用します。
それぞれの違いは以下のとおりです。
<?php echo "hoge" , "fuga"; // hogefuga と出力される print "hoge" , "fuga"; // エラーとなって出力されない ?>
文字列の中の変数の展開
出力する文字列をダブルクォーテーションで囲っていた場合、文字内に変数の中身が展開されます。
シングルクォーテーションで囲っていると展開されません。
<?php $name = "Mineo Okuda"; echo "My name is $name."; // My name is Mineo Okuda echo 'My name is $name.'; // My name is $name. // ${}で囲っても結果は同じです。 print "My name is ${name}."; // My name is Mineo Okuda ?>
最後に
今回は本当に基本的な内容になりましたが、この記事で少しでもPHPに興味を持っていただけたらとても嬉しいです。
次回は「変数と定数」について解説したいと思います。