クラスを宣言するとき、オブジェクトに必要なすべての変数とすべての関数をリストする必要がありますか? これらはプロパティとメソッドと呼ばれます。図 1 は、中括弧内でのみ変数を宣言できることに注意してください。
({})。図 2 は、クラス
内で 3 つのプロパティと 2 つのメソッドを定義する方法を示しています。
{
アクセス変数宣言
アクセス関数の宣言
}
名前 = $name;
$this->パスワード = $パスワード;
$this->lastLogin = time();
$this->access++;
}
// 前回の訪問時刻を取得します
関数 getLastLogin()
{
return(date("M d Y", $this->lastLogin));
}
}
//オブジェクトのインスタンスを作成します
$user = new User("Leon", "sdf123");
// 前回の訪問時刻を取得します。
print($user->getLastLogin() ."n");
// ユーザー名を出力します
。
print("$user->namen");
?>
プロパティを宣言するときに、変数は整数、文字列、または別のオブジェクトである可能性があります。プロパティを宣言するときにコメントを追加することをお勧めします。プロパティとデータ型の意味。
メソッドを宣言するときは、クラスの外で関数を定義するのと同じことになります。つまり、メソッドとプロパティには同じ名前の関数を安全に作成できます。たとえば、クラスの外では、この 2 つは競合しません。たとえば、クラスでは date() という名前のメソッドを定義できます。ただし、クラス
メソッドに for や while などの名前を付けることはでき
ません。PHP の型ヒントの date()。型ヒントは、メソッドに引数として渡される別のクラスの名前です。スクリプトがメソッドを呼び出し、クラスのインスタンスではない変数を渡す場合、PHP は「」を生成します。致命的なエラー"。他の型に与えていない可能性があります。整数、文字列、ブール値などの型ヒントを提供します。この記事の執筆時点では、型ヒントに配列型を含めるべきかどうかは議論の的でした。
型ヒントは、関数パラメーターまたは演算子インスタンスのデータ型をテストするためのショートカットです。常にこのメソッドを返すようにして、パラメーターが整数のみを生成するようにしてください。
<?php
の例
//成分
クラスウィジェット
{
パブリック $name='none';
パブリック $created=FALSE;
}
//アセンブラ
クラスアセンブラー
{
パブリック関数 make(ウィジェット $w)
{
print("$w->名前の作成n");
$w->作成=TRUE;
}
}
//コンポーネントオブジェクトを作成する
$thing = 新しいウィジェット;
$thing->name = 'ガジェット'
//アセンブリコンポーネント
アセンブラー::make($thing);
?>
パラメータに渡される変数に加えて、メソッドにはクラスの個々のインスタンスを表す特別な変数が含まれます。一部のオブジェクト指向言語では、これを使用する必要があります。修飾されていない変数がローカル属性に送信されると仮定しますが、PHP では、メソッドの変数はメソッドの特定のスコープ内でのみ使用されます。図 2 の User クラスのコンストラクターでこの変数が使用されていることに注意してください。
PHP では、プロパティやメソッドが宣言される前に、public、private、protected などのアクセス修飾子を定義できます。また、クラス内でさまざまなアクセス メソッドを宣言することもできます。この章では、関連する議論を説明します。
同じアクセス方法を持つ複数のプロパティを 1 行にカンマで区切ってリストできます。図 2 では、User クラスに $password と $lastLogin という 2 つのプライベート プロパティがあります。