PHPでサーバーサイドの開発ができるようになりたいな
こんにちは。HTMLやPHPの開発歴8年の著者が、PHPにおけるサーバーサイドプログラミングについて、その内容や特徴を簡単にをご紹介します。
WebサイトやWebアプリを開発していると、サーバーサイドという言葉やフロントエンドという言葉をよく耳にします。これらはWeb開発において非常に頻繁に使われる重要な言葉なのですが、これからWeb開発を始めようという方にとっては、いまいちどういう意味なのか分からないかもしれませんね。
心配は無用です。この記事で詳しく分かりやすく解説しますので、サーバーサイド・フロントエンドの違いや特徴についてはすぐ理解できるようになるでしょう。
サーバーサイドとフロントエンドの違いについて
まず、サーバーサイドとフロントエンドの違いについて説明しましょう。Web開発というものを一括りに考えるより、サーバーサイドとフロントエンドに分けて考えることで、データの流れが理解しやすくなったり、開発の担当分けがしやすくなったり、効率的な開発に非常に役に立ちます。
サーバーサイドとは
サーバーサイドとは、データベースへのデータ追加や取得、計算など、サーバー側の処理全般のことを言います。別名バックエンドと呼ばれることもあります。
例えば、画面の問い合わせフォームに何か入力があったとします。その入力を受け取り、メッセージをデータベースに登録したり、入力されているメールアドレスに自動返信を出したり、そういった処理をするところがサーバーサイドです。
縁の下の力持ちというか、サーバーサイドがしっかりしていないとWebサイト、Webアプリとして機能しなくなります。そういう意味で、サーバーサイドは非常に大切な部分を担っているということですね。
フロントエンドとは
フロントエンドとは簡単にいうと、ユーザーが実際に操作する画面周りのことです。問い合わせフォームを作ったり、ショッピングサイトだったら商品を見やすいように綺麗に並べたり、そのようなビジュアル部分を主に担っています。
フロントエンドの開発は単純な内容であればデザイナーさんが直接コーディングする場合も多い分野です。例えば視覚的効果やユーザビリティなど、プログラムとはまた違った分野の知識も時に必要となるからです。
ブラウザ上で完結する部分と言い換えてもいいかもしれません。
フロントエンドとサーバーサイドの違いについて、こちらの記事でも詳しく解説しておりますので、よろしければご覧ください。
PHPについて
では、PHPはサーバーサイドとフロントエンドのどちらを担う言語なのでしょうか?
答えはサーバーサイドです。
では、サーバーサイドのプログラム言語であるPHPにはどんな特徴があるのでしょうか?
PHPの特徴
PHPを使うとどんな処理ができるのでしょうか?
例えばログイン機能を作ろうと思えば、
- ブラウザにIDとパスワードを入力してもらう
- それを取得してデータベースに問い合わせる
- 正しければログイン画面を表示
- 間違っていれば再認証画面を表示
のような仕組みを構築します。これらはフロントエンド、つまりブラウザ上だけではできない処理で、Webサーバー上で構築する必要があります。
PHPを使うことで、サーバーサイドでそのような処理を作成することができるということですね。
PHPはサーバーサイドのプログラム言語
PHPはサーバーサイドでどのような処理ができるか、詳しく見ていきましょう。PHPがサーバーサイドで行う主な処理は、次の通りです。
- ブラウザからのデータ取得
- データベースへの接続とデータの取得、追加、更新、削除
- サーバー上でのデータ加工など、内部処理
- HTMLの生成
細かくは他にもありますが、代表的な機能は上の4つで十分でしょう。これらの機能を駆使することで、ブログサイトやショッピングサイトなど、あらゆるWebサイトを構築することができます。
PHPでサーバーサイドプログラミングをしてみよう!
では、PHPがサーバーサイドの言語としてどのような特徴があるのか分かったところで、ちょっとだけPHPを使ったサーバーサイドプログラミングをやってみましょう!
少しでも体験するのとしないのでは、PHPの理解度は全く違ってきますよ。
PHPコーディングの簡単なイメージ
ここでは、PHPの簡単なコーディングイメージだけをお伝えしようと思います。PHPを使うだけならそんなに難しくありません。
たとえば、今日の日付を表示するWebサイトを作ろうと思います。
<html> <head> <title>PHP Test</title> </head> <body> こんにちは、今日の日付は、「<?php echo date("Y/m/d");?>」です。 </body> </html>
なんと、これだけです! 途中に <?php echo date(“Y/m/d”);?> と書かれた部分があり、これが今日の日付に変換されてHTML文としてブラウザに渡され、画面に表示されます。
<?php ?> ではさまれた部分がPHPのコーディング箇所になり、様々な内部処理を記述できます。このように、PHPではHTML文の中にPHP構文を挿入する形で記述することができます。
これを見て「あ、思ったより簡単だ!」「自分でもできそう!」と思った方は、ぜひ本格的にPHP開発を始めていきましょう。
PHPを動作させる環境を自分のPCに構築したい場合は、XAMPPというソフトが非常に便利ですので、こちらの記事を参考にしてみてください。
PHPがサーバーサイドでできること
簡単にPHPのコーディング例を紹介してみましたが、その他サーバーサイドとしてPHPで実現可能なことをご紹介します。本当にたくさんのことができますので、PHPをマスターすることで質の高いWebサイトを構築することができるようになります!
PHPを使用して実現可能なWebサイトの機能は次のようなものがあります。
- ユーザー認証機能
- お問い合わせフォーム
- 検索機能
- ブログ機能
- ショッピングサイト機能
- SNS
- グループウェア
などなど、現存するWebサービスのほとんどはPHPなどのサーバーサイド言語を利用して構築されています。これから何かWebサービスを作ろうと考えている方にとっては必須の知識です。
これからPHPプログラミングを始められる方は、こちらの記事を参考にされるとスムーズな学習ができるでしょう。ぜひご覧ください。
まとめ
今回は、サーバーサイドという言葉の意味やフロントエンドとの違いの解説と、サーバーサイド言語としてのPHPの特徴や、PHPで実現可能なWebサービスなどを整理してみました。
サーバーサイドで様々なデータ処理を行うことで、フロントエンドだけでは実現できない様々な機能を実装することができます。そして、現存するWebサービスのほとんどはPHPのようなサーバーサイドの言語が使われていて、それ無しでは構築できないほど、サーバーサイドは重要な地位を占めています。
これからWeb開発を始めようと思う方は、サーバーサイドプログラミングは必須の知識となりますので、ぜひ習得しましょう!