menu
ホーム > PHPの文法 > 11 クラスとオブジェクト > PHP クラスとオブジェクトの概要
UPDATE:

PHP クラスとオブジェクトの概要

オブジェクト指向プログラミング

クラス と オブジェクト

PHPでは class(クラス)や object(オブジェクト)を作成することが可能で、オブジェクト指向プログラミング(OOP:Object-Oriented programming)の設計がサポートされています。

クラスの宣言

  • class クラス名 { }

では簡単な クラス を宣言してみましょう。クラス の作成は、キーワード class を使用し、続いてクラス名を記述します。その後に「{ }(波括弧)」のペアが続き内容を記述します。内容は クラス の プロパティ と メソッド の定義です。クラス名は大文字小文字が区別されません。詳細は「PHP の クラス名」をご覧ください。

内容は空ですが、クラスを定義できました。実行しても何も出力されませんが、問題なくクラスを定義出来ています。

基本的な「クラス」の定義

簡略化した クラス の定義は以下のような形になります。

クラスの中でクラス内変数の プロパティ と クラス内関数の メソッド を記述します。クラス は、[データ自身(プロパティ)]とデータを取り扱う[処理コード(メソッド)]が一つに合わさったものです。データベースなどを利用したデータ管理とそれを扱う関数群による手続き型プログラムでもデータと処理コードがあることには変わりませんが、オブジェクトはそれらを一つの塊として扱います。

厳密には以下の形で 継承 インターフェース トレイト アクセス権 などが設定できます。

こちらに関しては順次説明します。まずは インタスタンス化、プロパティ、メソッド について話を進めましょう。

インスタンス化 オブジェクトの作成とアクセス

  • $インスタンス new クラス名;

では次にこの クラス の オブジェクト を作成して インスタンス化(=オブジェクトが実体化したモノ) してみます。クラス から インスタンス化 して生成したものを インスタンス と呼びます。オブジェクト と呼称する場合も多いのですが、本ページでは インスタンス とします。インスタンス を通してクラス内の プロパティ や メソッド にアクセス出来ます。インスタンス の作成は キーワード new を使用します。作成した インスタンス の型も確認してみましょう。

実行結果
object
object

– サンプル Click Here ! –

文字列型 string などと同じように インスタンス にも型があり、gettype() で確認すると object となります。例では、$objA $objB と2つ インスタンス を生成していますが、それぞれ独立しています。このように幾つでも インスタンス を生成することが可能です。これを マルチプルインスタンス と言います。それぞれの インスタンス は完全に独立しており、お互いに影響を受けません。

マルチプルインスタンス

クラス squaring の インスタンス を別名で $obj1 $obj2 と2つを生成してみます。

– サンプル Click Here ! –

各 インスタンス に対して set_value() メソッド を呼び出して プロパティ value に操作を行います。プロパティ の値は各 インスタンス がそれぞれの値を保持しています。このように インスタンス は独立しているのです。プロパティ や メソッド に関しては以降で詳しく説明します。インスタンス は独立しているということを覚えておきましょう!


タグ(=記事関連ワード)

日付

公開日:2018年3月6日
最終更新日:

関連記事

配列関数サンプル

このカテゴリの他のページ

この記事へのコメント

トラックバックurl

http://wepicks.net/phpref-oop-clsobj/trackback/

page top