人気のプログラミング言語PHPとは何か?これから学びたい初心者の為に徹底解説



人気のプログラミング言語PHPとは何か?これから学びたい初心者の為に徹底解説

現在、最も多く使われているプログラミング言語のひとつがPHPです。PHPは、初心者でも学びやすいと言われています。プログラミングを学んでWeb業界で働きたい人や、キャリアアップを考えている人には、学ぶ価値のある言語でしょう。

今回は、PHPが一体どんな言語でどのような場面で使われているかなどを詳しく解説していきます。

目次
  1. PHPとは?
  2. PHPで出来ることとは?
  3. PHPの特徴・メリットは?
  4. PHPの仕組み
  5. PHPを書くための準備
  6. PHPの基本的な書き方
  7. PHPの基本構文
  8. if文
  9. for文
  10. while文
  11. まとめ

PHPとは?

image

まず、PHPとは一体どんな言語なのでしょうか?PHPについて知るには、PHPの公式サイトphp.netを参照するのが一番です。詳しくみていきましょう。

“PHP (PHP: Hypertext Preprocessor を再帰的に略したものです) は、広く使われているオー>プンソースの汎用スクリプト言語です。 PHP は、特に Web 開発に適しており、HTML に埋め>込むことができます。”

PHPは、スクリプト言語で、HTMLに埋め込んで使うことができます。スクリプト言語とは、プログラミング言語の中でも、プログラムの記述を簡易的に行うことができる言語のことを指します。記述法が英語に近いことから、コンピュータサイエンスの知識がない初心者でもとっつきやすく、勉強がしやすいと言われています。スクリプト言語には、PHPの他にも、JavaScript、Perl、PythonやRubyなどがあります。

C言語では、ブラウザに表示させるためにコマンドを記述する必要がありますが、PHPでは、HTMLにコードを埋め込んで使用します。そのため、C言語に比べて記述しやすくなります。

PHPのコードは、<?phpという開始命令と ?>という終了命令で囲まれ、このタグの間の記述がPHPの命令ということになります。

PHPで出来ることとは?

image

PHPでは、どんなことができるのでしょう?代表的なものを紹介します。

  • ブログを作る
    ブログを簡単に作成することができるwordpresは、PHPで作られています。PHPの知識がなくても利用は可能ですが、PHPが書けると、ブログのカスタマイズやテーマの作成を自身で行うことができます。

  • SNSを作る
    TwitterやFacebookといったSNSをPHPで作ることができます。実際に、FacebookもPHPで開発されていました。

  • ログイン画面を作る
    PHPは、情報を取得し、サーバーに置くことができるので、ログイン画面も作成することができます。Webサービスでは、必須ですよね。

  • ECサイトを作る
    ECサイト(ショッピングサイト)もPHPで構築可能です。会員情報の取り扱いや決済処理、在庫管理などの処理を、PHPで開発することができます。

PHPを使えば、ブログだけではなく、様々なWebサービスを構築することができるようになります。今まで使っていたWebサービスを、自分で作れるなんて、ワクワクしませんか?

PHPの特徴・メリットは?

image

PHPでは、色々なサービスが使われていることがわかりましたね!それでは、PHPを学ぶことのメリットってどんなものがあるのでしょうか?共通して言われることをまとめてみます。

  • 比較的簡単であること
    前述の通り、PHPは他のプログラミング言語よりも比較的学びやすいと言われています。未経験者がプログラミングを学ぶことで、一番の大きな壁は挫折です。プログラミングを学ぶのは、簡単なことではありません。できるだけ挫折を少なくするためには、学びやすい言語であるPHPは最適化と思われます。

  • 情報量が多いこと
    PHPは、世界で最も使われているプログラミング言語の一つです。利用している人が多いため、関連する情報もたくさん出回っています。PHPの関連書籍も多数出版されていますし、インターネット上では関連情報がたくさん手に入ります。プログラミングを勉強していると、必ずつまづくことがあり、検索をかけることがあると思います。その時に、参考になる情報が早く、豊富に手に入ることは、大きなメリットです。

  • 多くのサービスで使われていること
    PHPは、Facebookの開発で使われていたと紹介しましたが、その他にも世界的に使われているWebサービスや、wordpressで運営されるブログまで、PHPで構築されています。そのため、レンタルサーバーを使用したり、他にWebサービスを利用する際でも、PHPが使えないというケースはほとんどありません。

  • 求人が多いこと
    PHPの求人需要は高いです。HRナビ編集部とレバシーズ社の調査によると、Javaの求人割合がプログラミング関連求人の全体の3割、PHPの求人割合が全体の2割を占めるという結果が出ています。今後もこの割合は変わらないとみられており、PHPを扱えるエンジニアは安定したジョブマーケットを見込むことができます。キャリアチェンジを考えている方なら、やはり求人が多く需要が高い言語を勉強しておきたいところですよね。

PHPの仕組み

PHPの仕組みってどうなっているの?HTMLやJavascriptといった言語と何が違う?それを理解するのは、PHPの仕組みを理解する必要があります。

PHPは、サーバーサイドの言語です。サーバーでは、Webクライアントから送られて来たリクエッストに対して、そのリクエストに合うデータを用意し、データをクライアント側に送り返します。そのデータが、クライアント側で表示され、Web上で見ることができるようになります。

PHPは、このサーバーの伝達の部分を担っています。一方HTMLやJavaScriptは、クライアントサイドの言語なので、サーバーとは交信しません。これが、PHPを始めとしたサーバーサイドの言語と、HTMLやJavaScriptといったクライアントサイドの言語の大きな違いです。

PHPを書くための準備

PHPで書いたスクリプトが実際に動くかどうか試すためには、サーバーをパソコンにインストールする必要があります。このサーバーは、ローカルサーバーと言います。

Windowsの場合は、WampServer(WAMP)をインストールします。Macの場合は、MAMPをインストールしてください。

WAMPとMAMP下記を参考にして、インストールしてみてくださいね。

WAMPのダウンロードとインストール

初心者でも簡単にできるMAMPのインストール方法と使い方

PHPの基本的な書き方

image

ローカルサーバーはインストールできましたか?それでは、PHPの基本的な書き方を見ていきましょう。

PHPは、HMTLのコード中に記述します。下記のサンプルコードを見てみてください。

<html>
<head>
<title> Sample </title>
</head>
<body>
<h1><?php print (“ Hello World! “) ; ?> <h1>
</body>
</html>

パッと見ると、普通のHTMLのコードです。よくよく見てください、<h1>タグの中に、phpの命令開始タグ<?phpで始まるコードが埋め込んであります。

phpの命令終了タグ?>で囲まれた<?php print (“ Hello World! “) ; ?>の中にあるprint が、”Hello World”を表示させるように、と命令を出しています。(“Hello World”)の部分が、ブラウザに表示されるはずです。

命令終了タグの前に、;(セミコロン)が付いていますが、PHPでは各命令の最後に;(セミコロン)をつけます。忘れると、正しく動作されないので、気をつけてくださいね。

本当にブラウザで表示されるのか、このファイルを保存して、見てみましょう。PHPで記述したファイルは、拡張子を「.php」で保存します。ここでは、「index.php」としておきます。サーバーのルートフォルダに保存し、Localhostで表示されるか見てみます。localhost:8888のポートを開いて見ると・・

image

ちゃんと表示されていますね!

もし、ローカル環境を作らずに、まずPHPのコードを試してみたい、という方がいれば、「Wandbox」を使ってみてください。このソフトウェアは、ブラウザ上で実行環境を作ってくれるので、ローカル環境を作らなくても、動作チェックができます。まずは、PHPがどんな言語が何か触れてみたい方は、まずこちらから試しみてみるのがオススメです。

PHPの基本構文

image さて、PHPを使って、ブラウザに文章を表示させることができましたね。もっとPHPを学んでみたくなりましたか?

それでは、PHPで主に使われる構文を学んでいきましょう。初めは理解するのが難しいかもしれませんが、どれも重要なものばかりなので、目を通してみてくださいね。

if文

プログラミングでよく使われるのが、if文です。「もし○○したら〜する」といった条件分岐を定義します。

例えば、「もしログイン画面でパスワードを正しく入力できたら、次の画面に進むことができる。もし、ログイン画面でパスワードを間違えたら、エラーメッセージを表示させる。」という条件を、if文で表現してみましょう。

if (ログイン画面でパスワードを正しく入力できたら) {
// 次の画面に進むことができる。
}  else {
// エラーメッセージを表示させる。
}
?>```


if文の次に、else 文が続いていますが、else文では、「ログイン画面でパスワードが正しく入力できなかった場合」の条件を表示させます。この場合、「エラーメッセージを表示させる」ように設定します。

もし、条件が複数に及ぶ場合は、if文の次にelse if文を追加し、条件を指定することができます。

<?php if (ログイン画面でパスワードを正しく入力できたら) { // 次の画面に進むことができる。 } else if (ログイン画面のパスワードが空欄だったら { // 「パスワードを正しく入力してください」メッセージを表示させる。 } else { // 「パスワードが間違っています」メッセージを表示させる。 ?> ```

条件を詳しく指定することで、想定しうる様々な条件に対応することができるようになります。

for文

PHPでは、繰り返し処理を指定する構文(英語ではLoopと言います)がいくつかあります。その中の一つが、for文です。

Loopでは、同じコードを何回も繰り返し実行することができます。しかし、制限を決めることなく、繰り返し処理だけ設定すると、コンピュータはずっとその繰り返し処理を行い続けることになります。こうすると、コンピュータに負担がかかり、クラッシュする原因となっています。

繰り返し処理は便利ですが、正しく使うように気をつけましょう。for文の繰り返し処理は、下記のように書きます。例えば、1から100の数字の間の数字を表示させる、というfor文を書いてみましょう。

<?php
for ($i = 1; $i <= 100; $i++) {
echo $i; }
?>

forに続く( )の中で、繰り返し処理の条件を定義しています。$i=1; とは、1の数字から、という意味です。$i <=100; は、100までの数字、という意味です。この二つで、1から100までの数字を定義しています。最後に$i++;で、+(プラス)記号を使い、仮の数字iが加算していくということを指定しています。もし、数字を減算していきたい場合は、$i--;とー(マイナス)を使います。

while文

while文も、for文と同様、繰り返し処理を指定する構文です。for文との違いは、条件文の書き方です。whileの中で指定される条件文が正しい(true)と評価されたら、while条件の中のコードを実行されます。

for文のサンプルコードをwhile文で書くと下記のようになります。 <?php $i = 1; while ( $i <= 100) { $i++; echo $i; } ?>

まず、$i=1で、繰り返し処理の開始を定義します。その後、whileの後の()の中で、$iが100に達するまで処理を続けると記述しています。そして、for文の時と同様、$iを1つずつ加算するように命令し、echoの後に$iを表示させています。

while文には、もう一つ表現方法があります。それは、do…while文です。このdo…while文は、基本的にはwhile文の指示が逆になったものです。while文のサンプルをdo…while文で書くと下記のようになります。

<?php
$i = 1;
do {
$i++;
echo $i;
}
while ( $i <= 100)
?>

whileがdoの下に来ていますね!基本的には、while文と同じ結果が表示されます。しかし、while文とdo..while文の大きな違いは、「正しくない条件(false)」の時に生じます。while文の場合、条件定義が先に来るので、条件の後の処理は行われません。一方、do…while文の場合、先に条件の処理が来るので、先に処理が行われます。

場面に応じて、使い分けてください。

まとめ

今回は、PHPが一体どんな言語なのか、学ぶメリット、そして基本構文までを紹介して来ました。初心者にとって学びやすいと言われているPHPの所以がお分かりいただけたのではないでしょうか?今回紹介したコードや構文の他にも、まだまだPHPには学ぶべきものがたくさんあります。次回は、PHPの変数について紹介していきます。一緒に、PHPを学んでいきましょう!

CodeCampでは今からプログラミングを学びたい人向けの無料レッスンを行っています。今までやりたくても機会がなかった。挫折してしまったという方は今からもう一度学び始めてはいかがでしょうか?

Ayumi
この記事を書いた人
Ayumi
\ 無料体験開催中!/自分のペースで確実に習得!
オンライン・プログラミングレッスンNo.1のCodeCamp