PHPでできること。得意分野と苦手分野を知っておこう

PHPを学習しようと思っています。 PHPはWebサイトの作成に特化した言語と聞きましたが、 具体的にどんなことができるのかを知りたいです。

あと、逆にPHPでできないことや苦手なことがあれば教えてください。

今回はこのような疑問に答えていきます。

Webアプリケーションを作ってみたいプログラミング入門者にとって、 PHPはおすすめのプログラミング言語です。
ただし、どんな言語にも得意・不得意がありますから、 PHPで何でもできるわけではありません。

そこでこの記事では、PHPでできること。PHPの得意分野と苦手分野についてまとめてみました。

PHPの特徴

PHP

PHPはWebアプリケーション開発に向いているプログラミング言語です。 主に動的にWebサイトを作成するためのサーバーサイド言語として使われています。

PHPはC言語やJava、Perlなどの影響をうけており、 文法的にも似ていて習得しやすい言語です。
初心者でも習得しやすい言語ということもあり、 Webサーバーサイド言語としては約80%の割合でPHPが使われています。

多くのサイトでPHPが使われていますから、 PHPエンジニアに対する仕事の需要も多く、 プログラミング言語ではJavaの次に求人案件が多い言語です。

さらにPHPは個人での受託開発に向いている言語なので、 リモートワークとも相性が良く、 将来的にフリーランスエンジニアとして活躍したい方にはおすすめです。

PHPでできること

PHPでできることを紹介していきます。 まずは「単独的な機能」を紹介し、 次に「単独的な機能」を組み合わせて作る「総合的なシステム」を紹介します。

単独的な機能

入力フォーム(問い合わせフォーム)

入力フォーム

ホームページやブログによくある「入力フォーム」が作れます。 「問い合わせフォーム」や「メールフォーム」も含みます。

ユーザーが情報を入力して「送信」ボタンを押すと、 何かしらの処理を行う仕組みです。
この入力フォームはPHPで作るのが最も簡単です。

検索機能

検索機能

グルメ情報サイト「ぐるなび」のように、 ユーザーが入力した情報を元に、 該当する情報を表示するサイトを「情報検索サイト」といいます。

この情報検索サイトで重要な役割を果たす検索機能もPHPで実現できます。
ちなみに「ぐるなび」でもPHPが使われています。

ログイン機能

ログイン機能

Twitter・FacebookなどのSNSサイトや、 Amazon・楽天などのショッピングサイトは通常、会員制になっていて ログインすることでいろんなサービスの利用が可能になります。

このような会員制のWebサービスを作りたい場合は、ログイン機能が必須です。 PHPではログイン機能を作成することができますし、 ログインに伴うログアウト機能や新規会員登録機能も実現できます。

ファイル操作

ファイル操作

ファイルの内容を読み込んで表示したり、 ユーザーが入力した情報をファイルへ書き込んだり、 サーバーサイド処理ではファイルの操作も必須となります。
PHPはファイルを扱う関数がたくさん用意されていますから、 ファイル操作が容易にできます。

例えば、ファイルの読み込み操作1つをとっても

  • ファイルを一括で読みこむ
  • ファイルを1行ずつ読み込む
  • ファイルを1行ずつ読み込んで、配列に格納する
  • CSVファイルを読み込む

これらに対応した関数があらかじめ用意されています。 わざわざ自分で関数を作成する必要がありません。

データベース操作

データベース操作

データを管理する方法としてファイルで管理する方法と、 データベースで管理する方法があります。
少量のデータならファイルでも十分です。 しかしある程度の量のデータを管理する場合は、 データベースの方が管理しやすくなります。

PHPでは広範なデータベースをサポートしてるため いろんなデータベースとの連携が容易にできます。
(但し、データベースを操作するための言語「SQL」 は別途学習する必要があります。)

Web APIからデータ取得

Web API

Webサイトによっては、そのサイトが持っている貴重な情報を「Web API」として 公開している場合もあります。

Web APIを提供する目的はさまざまです。 例えば楽天やアマゾンなどのEコマースサイトでは、 商品情報を公開して自社サイトでの販売機会を増やす目的があります。

こうしたWeb APIでは、たいていPHPのサンプルコードが公開されています。 ですからPHPを使って簡単にデータ取得ができます。

総合的なシステム

ブログ

ブログ

Webサイトを管理するシステムのことをCMSといいます。 CMSの例としてはブログがあり、その代表格といえばWordPressです。 そしてWordPressはPHPで開発されています。

PHPができるようになれば、WordPressをカスタマイズすることもできますし、 ブログを自分で作成することもできます。

ショッピングサイト(ECサイト)

ショッピングサイト

PHPではショッピングサイト(ECサイト)を作成することもできます。

PHPで開発したECサイト用のシステムとして有名なのが「EC-Cube」です。 「だし」で有名な「にんべん」のネットショップや、 ランドセルを販売している「池田屋」のネットショップなど、 多くのショッピングサイトで「EC-Cube」が使われています。

SNSサイト

SNSサイト

FacebookやInstgram、TwitterなどのSNSサイトもPHPで作ることができます。

Facebookも今はPHPを改良した独自言語を使っていますが、 元々はPHPを使って開発されていました。WikipediaもPHPを使っています。

SNSサイトを作るために必要な機能はPHPに揃っていますから、 あとはアイデア次第でSNSサイトを開発することができます。

その他

コマンドベースでのプログラム

一般的には、PHPはWebアプリケーションを作るための言語です。 ですがWebとは関係なく、コマンドラインベースでのプログラムを作成することもできます。 コマンドラインというのはいわゆる「黒い画面」です。

計算をしたり、テキスト処理をするプログラムを作り、 それをコマンドラインで実行します。バッチ処理のような役目です。

コマンドベースのプログラムならブラウザもWebサーバも必要なく、 PHPパーサ(構文解析エンジン)さえあれば実行できます。

PHPが苦手なこと

PHPが苦手なことは、大きくわけて次の2つがあります。

  • コンピュータに大きな負荷がかかる処理
  • クライアントサイドの処理

コンピュータに大きな負荷がかかる処理

画像データを高速に処理したり、大量データを処理するような、 コンピュータに大きく負荷がかかるような処理はPHPが苦手とする所です。

このような処理は、C言語やC++、Javaといったコンパイル型言語でやるのが 普通です。処理スピードの点ではコンパイル型言語に分があります。

クライアントサイドの処理

そもそもPHPはサーバーサイドの言語ですから、 クライアントサイドは苦手分野です。

デスクトップアプリも作ろうと思えば作れます。 GUIアプリケーションを作成する場合は「PHP-GTK」を使います。 ですが、GUIアプリケーションはC#のような他の言語を使った方が はるかに効率がよく高性能なアプリケーションを作成できます。

大量高速データの処理やクライアント側の処理といった分野は、 PHPではなく他のプログラミング言語を使った方が賢明です。

PHPの知識だけでは足りない

PHPを使ってWebアプリケーションを作る場合の、 一般的な使用言語を整理してみます。

サーバー側
・PHP
・SQL

クライアント側
・HTML、CSS
・JavaScript(jQuery)

上のリストからわかるように、Webアプリケーションを作る場合、 PHPの知識以外にも、次のような言語の知識が必要となります。

  • HTML、CSS(必須)
  • JavaScript
  • SQL

Webサイトを作るのに必要なのがHTML、CSSです。 HTML、CSSを知らないことにはWebサイトは作れませんから、 PHPを学習する前にHTML、CSSの基礎知識を習得しておく必要があります。

クライアント側(ブラウザ側)で動きのある処理をしたいのなら、 JavaScript(jQuery)が必要となります。
さらにサーバー側で、データベースを使ってデータを処理するなら、 データベースを操作するための言語である「SQL」の知識が必要です。

PHPの学習方法

PHPを学習する方法は大きくわけて次の2つがあります

  • 独学
  • プログラミングスクール

独学の場合は次の記事を参考にしてください。

PHPの独学は難しくない|学習の順番・サイト・本を紹介
PHPはWebサービスを作ってみたい方や、Webエンジニアを目指す方などにおすすめの言語です。このページではPHPの独学が難しいと思われている理由や、独学での学習方法、手順、おすすめのサイトや本などを紹介します。

プログラミングスクールを利用して学習する場合は次の記事を参考にしてください。

【目的別に厳選】PHPが学べるプログラミングスクール
PHPが学べるプログラミングスクールを紹介します。安い、無料、オンライン型、教室型、フレームワークが学べる、WordPressが学べるなど、目的別のおすすめスクールを紹介しています。

まとめ

PHPは文法も簡単で、初心者でも習得しやすいため人気のある言語です。 多くのWebサイトでPHPが使用されているため、 PHPエンジニアに対する需要も多くあります。

もしWebアプリケーションを作成するための、 サーバーサイド言語を探しているのなら、 PHPはおすすめの言語です。

タイトルとURLをコピーしました