■サンプルファイルのダウンロードについて
本書掲載のサンプルファイルは、下記 URL からダウンロードできます。

https://-----------------------------------------------------

・本書の内容についてのご意見、ご質問は、お名前、ご連絡先を明記のうえ、小社出版部宛文書（郵送または E-mail）でお送りください。
・電話によるお問い合わせはお受けできません。
・本書の解説範囲を越える内容のご質問や、本書の内容と無関係なご質問にはお答えできません。
・匿名のフリーメールアドレスからのお問い合わせには返信しかねます。
本書で取り上げられているシステム名／製品名は、一般に開発各社の登録商標／商品名です。本書では、™ および ® マークは明記していません。本書に掲載されている団体／商品に対して、その商標権を侵害する意図は一切ありません。本書で紹介している URL や各サイトの内容は変更される場合があります。

はじめに
PHP（ピー・エイチ・ピー）はオープンソースの汎用プログラミング言語とその公式の処理系を指します。本書では、主に PHP のプログラミング言語としての側面に焦点を当てます。
PHP は、Web サーバーで実行されて Web ページを生成するために使われることが多いですが、プログラミング言語としての PHP の用途はそれだけにとどまりません。
本書では、最初に PHP 全体について解説したあと、前半ではプログラミング言語としての PHP について解説し、後半では Web サーバーで実行される PHP プログラムについて解説します。そのため、Web サーバーで PHP を利用するときに必要になる、Web サーバーのことや HTML とその関連技術について、最初はまったく知らなくても PHP の学習を始めることができます。そして後半でサーバーで実行する PHP プログラムファ
イルや HTML に埋め込んでサーバーで実行する PHP スクリプトについて解説します。
このときには HTML の知識が必要になるので、PHP のプログラミングに必要な範囲でHTML についても説明します。このように段階を追って学習することで、一度に多くの事項に惑わされることなく、楽しく容易に PHP を習得することができます。
本書を活用して PHP プログラミングの基礎を楽しく学んでください。
2021 年 春
著者しるす

iii

本書の表記┗本書の紙面上でプログラムリストやコマンド入力の長い行を折り返して記載していることを示します。実際に入力する際には、この記号およびその前の改行や空白は無視してください。

abc

斜体の表記は、そこに具体的な文字や数値が入ることを表します。たとえば「PHP 7.X」は、X に数値が入り、「PHP 7.3」や「PHP 7.4」となることを表します。

[...]

書式の説明において角括弧で囲った部分は省略可能であることを示します。

>

Windows のコマンドプロンプトを表します。

php >PHP を対話シェル（対話型インタープリタ）として起動したときのプロンプト$

Linux など UNIX 系 OS のコマンドプロンプトを表します。
です。

> abc

対話シェルのプロンプトや OS のプロンプトに続く太字の表記は、読者が入力する部分です。

本文を補足するような説明や、知っておくとよい話題です。

ご注意●

本 書 で は、PHP の バ ー ジ ョ ン 8.m.n を PHP 8 と 呼 び、PHP の バ ー ジ ョ ン 7.m.n を
PHP 7 と呼ぶことがあります。

●

本書の内容は本書執筆時の状態で記述しています。執筆時の PHP の最新のバージョンは 8.0.2 です。ただし、執筆時点で PHP 8 をサポートしていないサーバーが多数あります。また、将来、PHP のバージョンが変わるなど、何らかの理由で記述と実際とが異なる結果となる可能性があります。

●

本書は PHP のすべてのことについて完全に解説するものではありません。必要に応じて PHP のドキュメントなどを参照してください。

●

本書のサンプルは、プログラミングを理解するために掲載するものです。実用的なアプリとして提供するものではありませんので、ユーザーのエラーへの対処や安全

iv

確保、その他の面で省略してあるところがあります。
動作を確認した PHP のバージョン●

8.0.2（Windows 10）●

7.4.9（Windows 10）●

7.4.3（Linux/Ubuntu）

書に関するお問い合わせについて
本書の内容に関するご質問、お問い合わせは、下記の事項を明記の上、巻末記載の出版社所在地宛郵送もしくは sales@cutt.co.jp 宛メールにて文書でお送りください。
●

氏名、連絡先（住所またはメールアドレス）●

書名、記載ページ●

問い合わせ内容●

実行環境

なお、本書の記載内容から外れたご質問、特に、OS、PHP のバージョン、Web サー
バーなどの特定の組み合わせに関するご質問などにはお答えできません。あらかじめご
了承ください。

v

も

く

じ

目次

はじめに................................................................................................................iii

第1章

PHP の概要……1
1.1

PHP について......................................................................................... 2

1.2

PHP の実行方法...................................................................................... 4

1.3
1.4

第2章

◆ プログラミング言語 ……2◆ PHP 処理系 ……3◆ PHP の用途 ……3◆ コマンドラインで直接実行する ……4◆ 対話シェルで実行する ……4◆ スクリプトファイルを実行する ……4◆ Web サーバーで実行する ……5

PHP のバージョン.................................................................................. 6◆ バージョンの呼称 ……6◆ バージョンによる違い ……6◆ 最近のバージョン ……7◆ PHP のバージョン確認 ……7

PHP と関連言語...................................................................................... 9◆ HTML ……9◆ JavaScript ……9◆ 役割の分担 ……10

はじめての PHP……11
2.1

単純な PHP プログラムの実行.............................................................12

2.2

スクリプトの実行..................................................................................18◆ コマンドラインで直接実行する ……12
◆ スクリプトファイル ……18

◆ ファイルの作成 ……19

◆ スクリプトの実行 ……20

◆ ファイルの保存 ……20

◆ PHP コードの視覚的な分離 ……22

◆ 複数のコードの記述 ……22

2.3

◆ 対話シェルで実行する ……16

◆ 短縮形式 ……23

◆ PHP 以外の要素 ……23

PHP の日本語対応................................................................................24◆日本語の文字列 ……24

◆ 実行時の日本語対応 ……25

◆ 日本語の名前 ……25

練習問題 .............................................................................................................26

第3章

PHP の基本的な要素……27
3.1

文............................................................................................................28

3.2

名前と文字.............................................................................................31◆ 文 ……28◆ インデント ……30

◆ キーワード ……31
◆ 空白 ……34vi◆ コメント ……30

◆名前の文字 ……32

◆ エスケープシーケンス ……33

もくじ

3.3

型............................................................................................................35◆ データ型 ……35

◆ 論理値型 ……35

◆ 文字列型 ……37

◆ 配列 ……38◆ 整数型 ……36

◆ NULL ……41

◆ 浮動小数点数型 ……36

◆ 型の変換 ……423.4

変数と定数.............................................................................................433.5

演算子....................................................................................................45◆ 変数 ……43◆ 定数 ……44◆ 単項演算子 ……45

◆ 加算子／減算子 ……45

◆ 代入演算子 ……47

◆ 参照の代入 ……48

◆ ビット演算子 ……48

◆ 比較演算子 ……49

◆ 論理演算子 ……50

◆ 配列演算子 ……51

◆ 演算子の結合順序 ……52

◆ 二項演算子 ……46

◆ 実行演算子 ……53

練習問題 .............................................................................................................54

第4章

入出力……55
4.1

コンソール出力......................................................................................56◆ echo と print ……56
◆ print_r() ……61

4.2

◆ printf() ……57

◆ 書式指定文字列 ……59

◆ 省略形出力 ……62

コンソール入力......................................................................................63◆ キーボードからの入力 ……63
◆ 数値の入力 ……66

◆ fgets(STDIN) ……64

◆ fscanf(STDIN) ……66

4.3

コマンド引数.........................................................................................68

4.4

ファイルの読み書き..............................................................................70◆ コマンドラインと引数 ……68

◆ コマンドライン引数の処理 ……68

◆ ファイルへのテキストの出力 ……70

◆ ファイルへの追加 ……73

◆ 単純なファイルからの読み込み ……74

◆ while 文を使った読み込み ……76

◆ エラー処理 ……77

練習問題 .............................................................................................................78

第5章

制御構造……795.1

条件分岐.................................................................................................80

5.2

繰り返し.................................................................................................90◆ if 文 ……80

◆ for 文 ……90

◆ switch 文 ……83

◆ foreach 文 ……93

◆ break 文 ……96

5.3

◆ match 文 ……88

◆ return ……97

◆ while 文 ……94

◆ do-while 文 ……96

◆ continue ……97

無条件分岐.............................................................................................98◆ goto ……98

練習問題 ..........................................................................................................100

vii

第6章

関数……1016.1

関数.....................................................................................................102◆ 関数 ……102◆ 文字列処理関数 ……107◆ マルチバイト文字列関数 ……112

6.2◆ 日時に関する関数 ……115関数の定義..........................................................................................119◆ 関数の定義 ……119◆ 複数の値を返す関数 ……120◆ 可変長引数リスト ……123◆ デフォルト引数値 ……122◆ 値渡しと参照渡し ……124◆ 関数と変数 ……125

6.3

さまざまな関数...................................................................................126

6.4

モジュールと名前空間.......................................................................128◆ 変数関数 ……126◆ 無名関数 ……127◆ モジュール ……128◆ 再帰関数 ……127◆ 名前空間 ……129

練習問題 ..........................................................................................................132

第7章

クラスとオブジェクト……133
7.1

クラスとオブジェクト.......................................................................134

7.2

クラス.................................................................................................135

7.3

継承.....................................................................................................143◆ オブジェクト ……134◆ 既存のクラスの例 ……135 ◆ 新しいクラスの定義 ……137◆ ベースクラスとサブクラス ……143 ◆ ベースクラスの定義 ……144◆ サブクラスの定義 ……145

7.4

インターフェイス...............................................................................148◆ インターフェイス ……148 ◆ インターフェイスの定義と利用 ……148

練習問題 ..........................................................................................................152

第8章

Web サーバーと HTML……153
8.1

ホームページの仕組み.......................................................................154

8.2

Web サーバー....................................................................................157◆ Web サーバーとクライアント ……154◆ Web サーバーについて ……157◆ レンタルサーバー ……158◆ HTML と PHP ……156◆ ローカルサーバー ……158◆ 自前の公開サーバー ……159◆ ビルトインサーバー ……159

8.3

HTML.................................................................................................159◆ タグ ……160◆ ファイルの配置 ……164◆ スタイル ……168◆ コメントと特殊タグ ……168

練習問題 ..........................................................................................................170

viii

もくじ

第9章

HTML と PHP プログラム……171
9.1

PHP を含む HTML ファイル............................................................172◆ Web サーバーの働き ……172◆ 単純な例 ……172◆ Web ブラウザ単独の処理 ……174◆ 関数を呼び出す例 ……176

9.2◆ ファイルの配置 ……173◆ 日本語に対応させた例 ……175◆ Web サーバー v.s. Web ブラウザ ……178

サーバー上の PHP スクリプトファイル...........................................181◆ PHP スクリプトの実行 ……181◆ PHP スクリプトの中の HTML ……182

練習問題 ..........................................................................................................184

第 10 章フォームと PHP……185
10.1

フォーム..............................................................................................186◆ HTML のフォーム ……186◆ HTML の input 要素 ……187◆ データの受け取り ……190

10.2

より複雑なフォーム...........................................................................192◆ さまざまなフォームの入力要素 ……192◆ さまざまなデータの処理 ……195◆ メールの送信 ……199

10.3

GET メソッド.....................................................................................203◆ GET メソッドのフォーム ……203◆ PHP ファイル ……205

練習問題...........................................................................................................208

第 11 章データベースとの連携……211
11.1

データベースの基礎...........................................................................212◆ データベース ……212◆ データベースの構造 ……214◆ カレントレコード ……215◆ リレーショナルデータベース ……216◆ SQL ……217

11.2◆ キー ……215◆ トランザクションとコミット ……220

MySQL..............................................................................................221◆ MySQL ……221◆ データベースの作成 ……221◆ データの登録 ……223

11.3◆ データベース管理システム ……213◆ データベースとデータベースアプリ ……214

PHP でのデータベース操作..............................................................226◆ PDO ……226◆ 接続とデータ取得の流れ ……226◆ データベースの新規作成と使用 ……230

11.4◆ テーブルの作成 ……222◆ データの取得 ……224◆ テーブル作成 ……230◆ データの登録 ……232◆ データの検索 ……233◆ データの削除 ……236◆ テーブルの削除 ……236◆ データの更新 ……235

データベースとフォーム....................................................................237◆ データベースの準備 ……237◆ レコードの検索と表示 ……237◆ レコードの登録と更新 ……241

練習問題 ..........................................................................................................246ix

第 12 章さまざまな話題……247
12.1

エラー対策とデバッグ.......................................................................248◆ 例外処理 ……248◆ デバッグ ……249◆ デバッグの手順 ……250◆ 最良のデバッグ方法 ……25112.2

安全確保..............................................................................................251

12.3

応用プログラミング...........................................................................255◆ php.ini による設定 ……25

◆ 対話シェルの活用 ……255◆ 暗号化 ……254◆ コマンドラインツール ……255◆ GUI アプリ ……255

12.4

パフォーマンス...................................................................................256

12.5

今後の進み方......................................................................................257◆ PHP のパフォーマンス ……256◆ PHP のさまざまな要素 ……257◆ パフォーマンスの改善 ……256◆ HTML と CSS ……258◆ データベース ……258

付 録……259
付録 A インストールと設定のヒント............................................................260
付録 B トラブル対策......................................................................................267
付録 C 練習問題解答例...................................................................................273
付録 D 参考リソース......................................................................................295

索引...................................................................................................................297

x

第

1

章

PHP の概要

ここでは PHP とその使われ方の概要を説明します。

第1章

PHP の概要

第1章

PHP の概要

1.1 PHP について
PHP はオープンソースの汎用プログラミング言語とその公式の処理系を指します。

◆ プログラミング言語 ............................................................................... ◆まず、汎用プログラミング言語の側面から PHP について説明しましょう。
PHP は、Web サーバーで実行されて Web ページを生成するために使われることが多いですが、決して Web プログラミング専用の言語というわけではありません。プログラ
ミング言語としての PHP の用途は多岐に渡ります。他のプログラミング言語と比較して得手不得手はありますが、PHP は厳密には汎用プログラミング言語に分類されます。
PHP が汎用プログラミング言語であるという点は見逃されがちですが重要です。PHPのプログラムを実行するために Web サーバーが必要不可欠ということはありません
し、実行結果は Web ブラウザ上でしか確認できないということもありません。PHP は、HTML など他の言語や Web サーバーなどの問題と完全に切り離して、それ単体でプログ
ラミング言語として学習することができます。
PHP は、命令を 1 つずつ解釈しては実行するインタープリタ言語です。そのため、例
えば C 言語や Go 言語のようなコンパイラ言語と呼ぶプログラミング言語で作成したプ
ログラムよりも実行時の速度が遅いといえますが、特に速度を要求されない一般的な用
途には十分実用的な速度で実行されます。
インタープリタ言語は、実行する前にコンピューターが実行できる情報に変換するためのコンパイルという作業がないので、比較的手軽に利用できます。しかし、その反面、実行してみないとわからない間違いが紛れ込むリスクが増すという問題点もあります。
ですから、手軽に利用できる言語だからといって安易に取り組んでよいわけではありません。
PHP は、高レベルのプログラムを比較的容易に記述して実行するためのプログラミン
グ言語という観点から、スクリプト言語という種類にも属します。

2

1.1

PHP について

1
高レベルのプログラムとは一般ユーザーが通常使うようなプログラムであるのに対して、低レベルのプログラムは機械や装置などに組み込まれていて一般ユーザーが直接使うことがないよ
うなプログラムです。

2
3◆ PHP 処理系 ............................................................................................. ◆PHP のもう 1 つの側面は、プログラミング言語としての PHP で書かれたプログラムを実行する処理系としての側面です。また、PHP のインタープリタは Web サーバーと連携して、PHP だけでなく HTML や JavaScript、テキストなども使って作成されたドキュメントを適切に処理することができます。

◆ PHP の用途 ............................................................................................. ◆PHP にはさまざまな用途があります。
現在、最も多く使われているのは、いわゆるホームページ（Web ページ）を作成するという用途です。単に情報を表示するだけの静的な Web ページを作成するには HTMLという記述言語だけでもできますが、状況に応じて変わる動的な Web ページを Web サ

4
5
6
7
8
9

ーバーで生成するときにはそのための言語が必要になります。その目的のためによく使われるのが PHP です。
また、PHP はさまざまなコマンドラインツールやなんらかの作業を行うプログラムを作成するときにも使うことができます。
さらに、ウィンドウを利用する GUI アプリケーションを PHP で作成することもできます（本書では取り上げません）
。

10
11
12

付録

3

第1章

PHP の概要

1.2 PHP の実行方法
PHP はさまざまな方法で実行することができます。具体的な例は第 2 章と第 9 章で説明します。

◆ コマンドラインで直接実行する ......................................................... ◆PHP のプログラムを実行する最も単純な方法は、OS のコマンドラインでプログラム
コードを指定して PHP インタープリタを起動して実行する方法です。この方法で実行できるプログラムは単純なものに限られます。

◆ 対話シェルで実行する .......................................................................... ◆PHP の対話型インタープリタを起動して、その中でプログラムコードを入力しながら実行することもできます。この対話モードで実行する環境を「対話シェル（Interactive
shell）」といいます。
この方法は、ちょっとした実験をしたり、関数と呼ぶプログラムの部品を試してみた
いようなときに便利です。
実際の開発においても、PHP のコードをチェックしたりデバッグする際に、ページ全体を Web サーバーに保存してクライアントから実行をリクエストして調べるよりも、対話シェルで PHP のプログラム部分だけを実行して検証するほうが効率的であることがあります。

◆ スクリプトファイルを実行する ......................................................... ◆ある程度まとまった PHP のプログラムコードをファイルに保存して、コマンドライン
から一気に実行することができます。
この方法を使って、やや複雑な処理を行うツールなどを作成して、必要なときに実行することができます。また、Web で PHP を使っている場合でも、この方法は関数を作成してテストしたり、データベースに直接アクセスするプログラムを作りたいようなと

4

1.2

PHP の実行方法

1

きなどに便利です。
ここまでの 3 種類の方法は第 2 章で具体的に説明します。

2◆ Web サーバーで実行する ................................................................... ◆3

PHP のプログラム（スクリプトともいう）は、HTML で記述する Web ページの中に埋め込むことができます。また、PHP のプログラムだけを含む Web サーバーで実行される PHP のスクリプトを作ることができます。これらのプログラムは Web サーバーで実行されます。
この形式のプログラムを実行するには、単に PHP が埋め込まれた Web ページを Web
サーバーへのリクエストによって表示するか、PHP のスクリプトファイルにアクセスします。ただし、ページの中の PHP プログラムが意図したように実行されるように、Web

45
6

サーバーに必要なものをインストールして設定しなければなりません。
HTML で記述する Web ページの中に埋め込んだ PHP のプログラム（スクリプト）を
Web サーバーで実行するためには、HTML の知識が必要になります。また、Web ペー
ジをサーバーで表示できるようにするための知識も必要になります。さらに、PHP のプ
ログラムを含む Web ページを意図通りに扱える Web サーバーを用意するか、あるいは、
そのように準備された Web サーバーを借りるなどの必要があります。

78
9

このプログラムの実行方法は第 9 章以降で具体的に説明します。

10
11
12

付録

5

第1章

PHP の概要

1.3 PHP のバージョン
PHP は 1990 年代に作成され、いままでバージョンアップが繰り返されています。

◆ バージョンの呼称 ................................................................................... ◆PHP のバージョンは、正確には次の形式で表記します。
メジャーバージョン . マイナーバージョン . リリースバージョン
例えば、「8.0.2」のように表記できますが、一般的には、8.0 や 7.4 あるいは 5.6 のようにリリースバージョンを省略して表記することがよくあります。
さらにマイナーバージョンを省略して、PHP のバージョン 8.m を PHP 8 と呼び、PHPのバージョン 7.m を PHP 7 と呼ぶことがあります。
PHP 5 より前の古いバージョンの PHP は現在ではほとんど使われません。また、PHP
5.6 のセキュリティ対応が 2018 年 12 月で終了しているので、PHP 5 もやむをえない場合だけ使うようにして、新しいプログラムでは PHP 7 以降を使うのが良いでしょう。

◆ バージョンによる違い .......................................................................... ◆バージョンアップされると、機能や関数などが追加されます。既存の部分は引き継がれることが多いので、基本的には前のバージョンと互換性があります。バージョンごとの変更の主な点は次のドキュメントに記載されています。
https://www.php.net/manual/ja/appendices.php

また、詳細の変更については次のドキュメントで確認できます。
https://www.php.net/manual/ja/index.php

6

1.3

PHP のバージョン1

次の 2 点には特に注意が必要です。

●

いくつかの点で前のバージョンで使えたものが使えない、あるいは詳細が変わっていることがあります。前のバージョンのソースを新しいバージョン用に書き換える
ときには変更された部分をチェックする必要があります。

●

2
3

PHP 5 以前など古いバージョンと PHP 7 や PHP 8 では互換性がない部分が多くなり4ます。安全確保のためにも古いバージョンを使うことは推奨しません。
本書の範囲内では、PHP 7 または PHP 8 を使う上でバージョンの違いが問題になるところはほとんどありませんが、それがある場合は可能な限り明示します。

5
6

本書の内容は PHP 5.6 より古いバージョンには適用できない部分があります。

7◆ 最近のバージョン ................................................................................... ◆82020 年 11 月に PHP 8.0 がリリースされ、本書執筆時の現在の最新バージョンは
8.0.2 です。最新のバージョンは PHP 8 であるともいえます。ただし、現時点では多くのレンタルサーバーは PHP 8 をサポートしておらず、PHP 7 や PHP 5 をサポートしているでしょう。
ローカルで（自分のマシンで）PHP のプログラムを実行したい場合や自分で Web サーバーを準備する場合は、PHP 8 でも PHP 7 でも好みのものをインストールして実行することができます。しかし、サーバーを借りて Web ページを公開する際に PHP を利用

9
10
11

するときには、サーバーの管理者に利用可能な PHP のバージョンを確認しておく必要が

12

あります。

◆ PHP のバージョン確認 ........................................................................ ◆ローカルな PHP のバージョンは PHP をインストールしたマシンで「php -v」を実行して確認することができます。

付録

7

第1章

PHP の概要>php -v

PHP 7.4.15 (cli) (built: Feb
Copyright (c) The PHP Group2 2021 20:47:45) ( ZTS Visual C++ 2017 x64 )Zend Engine v3.4.0, Copyright (c) Zend Technologies>

あるいは次のように表示されます。
>php -v

PHP 8.0.2 (cli) (built: Feb
Copyright (c) The PHP Group3 2021 18:36:40) ( ZTS Visual C++ 2019 x64 )Zend Engine v4.0.2, Copyright (c) Zend Technologies>

Linux の場合は例えば次のように出力されます。
$ php -v

PHP 7.4.3 (cli) (built: Oct
Copyright (c) The PHP Group6 2020 15:47:56) ( NTS )Zend Engine v3.4.0, Copyright (c) Zend Technologies$

with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies

PHP のバージョンは phpversion() や phpinfo() という PHP の関数と呼ぶものを使って調べることもできます。ただし、サーバーを提供している組織によっては、サーバー保護のためにこれらの関数を実行できないように設定している場合があります。

8

1.4

PHP と関連言語

1

1.4 PHP と関連言語

2

特 に Web サ ー バ ー で PHP を 活 用 す る と き に は、PHP 単 独 で は な く、HTML とJavaScript という言語を活用することがあります。

◆ HTML ....................................................................................................... ◆HTML（HyperText Markup Language）は主に Web ページ（ホームページともいう）
を記述するために使われます。HTML は、Web ページの見出しやテキスト、入力フィールドなどの要素や、そのページの属性を示す情報などを記述するために使います。
PHP に対応した Web サーバーは、HTML の中の PHP コードの出力を HTML の中に埋め込んで Web ブラウザなどの Web クライアントに送ります。Web ページで PHP を使
うときには、HTML の知識も必須になります。

3
4
5
6
7

なお、HTML の表現力を高めるために CSS（Cascading Style Sheets）というものをよく使います。CSS は、ページに表示する要素の配置や見栄えなどを指定するために使われます。HTML を使うときにはよほど単純な場合を除いて一般的には CSS も併用するので、事実上、CSS は HTML の一部であるとみなすことができます。そのため、Web ペー
ジで PHP を使うときには、HTML と同様に CSS の知識も必要になります。

◆ JavaScript .......................................................................................... ◆HTML は原則として静的なページ（変化のない）を表現する言語です。Web ブラウザなどの Web クライアントで、例えば表示されたそのときの Web クライアントの時刻を表示するというように、そのときの状況に合わせて表示を変える場合には、一般的には
JavaScript が使われます。

8
9
10
11
12

JavaScript のごく単純な例を第 9 章で示しますが、JavaScript については本書ではそれ以上は扱いません。

付録

9

第1章

PHP の概要◆ 役割の分担 ................................................................................................ ◆Web サーバーで PHP を活用するときに、それぞれの言語は次のように役割を分担し
ています。

●

HTML

		 Web ブラウザのような Web クライアントに表示する内容を記述します。また、PHPや JavaScript のスクリプト（プログラム）を内部に記述するためにも使われます。

●

PHP

		 Web サーバーで PHP を活用するときに、PHP はサーバーで実行するべき処理を行います。例えば、Web ページの所定の場所にユーザーが入力した情報をもとに、
Web サーバーにあるデータベースから情報を検索して表示するときに PHP を使います。

●

JavaScript

		 Web クライアントで実行するべき処理を行います。例えば、Web ページの所定の場
所にユーザーが情報を入力したかどうか確認するときに JavaScript を使います。

10