$this は、インスタンス化後の特定のオブジェクトを意味します。
通常、最初にクラスを宣言し、次にこのクラスを使用してオブジェクトをインスタンス化します。
ただし、このクラスを宣言するときは、このクラスのプロパティまたはメソッドをクラス自体の中で使用したいと考えます。どのように表現すればよいのでしょうか?
例:
User クラスを宣言します。属性 $name;
が 1 つだけ含まれていますクラス名
{
公開 $_name;
}
ここで、User クラスにメソッドを追加します。 getName() メソッドを使用して $name 属性の値を出力します
php の内容をクリップボードにコピーします。phpコード:
クラスユーザー
{
パブリック $name;
関数getName()
{
$this->名前をエコー;
}
}
//どうやって使うの?
$user1=新しいユーザー();
$user1->name='張三';
$user1->getName();
$user2=新しいユーザー();
$user2->name='李思';
$user2-getName();
どうやって理解するの?
上記で 2 つの User オブジェクトを作成しました。 $user1 と $user2 です。
$user1->getName() を呼び出したとき。上記の User クラスのコード echo $this->name は echo $user1->name;
と同等です。おそらくそういう意味でしょう!
実際には、トラブルに巻き込まれたくないのです。これは、クラス内のプロパティとメソッドを表すために使用されるコード名であることだけを知っておく必要があります。考えれば考えるほど混乱してしまいます!