おーしまブログ

プログラミングやってます

【PHP】$thisとは

こんにちは、おーしまです。

今回はPHPの$thisについて書いていきます。


$thisとは、擬似変数と呼ばれ、PHPでクラスを実装する時に自身のプロパティやメソッドにアクセスするために使用します。

つまり、

$this->(プロパティ、メソッド)

と書いて、クラスのプロパティ、メソッドにアクセスすることができるということです。



例です。

<?php
class Cars {
 
  public $name = "";
 
  public function setName($name) {
    $this->name = $name;
  }

  public function getName() {
    return $this->name;
  }
 
}

$car = new Cars();

$car->setName("civic");

$car2 = new Cars();

$car2->setName("wrx-sti");

echo $car->getName(). "\n";

echo $car2->name. "\n";

?>

実行結果:
civic
wrx-sti



今回は、Carsクラスのインスタンスを生成して、

$car->setName("civic");

で、setNameメソッドを呼び出しています。$carはCarsクラスのインスタンスなので、->setName()でメソッドを呼び出すことができます。

setNameメソッドの仮引数$nameに"civic"が代入されました。

$this->name = $name;

上の$thisは、Carsクラスのインスタンスである$carになります。
つまり、$carのnameプロパティにcivicが代入されることになります。

新しくインスタンスを生成した、$car2のnameプロパティにはwrx-stiが代入されていることが分かります。


また、値を取り出すときも同様に、
$this->name
$car2->name
も同じ結果となっています。



今回はここまでです。
それでは、また

ここはどこ おれはだれ それに近いものがあんだよ 始めようとした奴らも迷い始めてる 怖がらせないでよ そりゃ甘くはないけど まだまだ 夢見ていい世界なんでしょ {UVERwould「ハイ!問題作」}