<?php
class Fruit {
// Properties
public $name;
public $color;
// Methods
function set_name($name) {
$this->name = $name;
}
function get_name() {
return $this->name;
}
}
?>
<?php
class Fruit {
// Properties
public $name;
public $color;
// Methods
function set_name($name) {
$this->name = $name;
}
function get_name() {
return $this->name;
}
function set_color($color) {
$this->color = $color;
}
function get_color() {
return $this->color;
}
}
$apple = new Fruit();
$apple->set_name('Apple');
$apple->set_color('Red');
echo "Name: " . $apple->get_name();
echo "<br>";
echo "Color: " . $apple->get_color();
?>
PHP - $thisキーワード
$thisキーワードは現在のオブジェクトを参照し、メソッド内でのみ使用できます。
次の例を見てください。
例
<?php
class Fruit {
public $name;
}
$apple = new Fruit();
?>
では、$nameプロパティの値はどこで変更できるでしょうか。次の2つの方法があります。
クラス内(set_name()メソッドを追加して$thisを使用):
例
<?php
class Fruit {
public $name;
function set_name($name) {
$this->name = $name;
}
}
$apple = new Fruit();
$apple->set_name("Apple");
echo $apple->name;
?>
クラス外(プロパティ値を直接変更):
例
<?php
class Fruit {
public $name;
}
$apple = new Fruit();
$apple->name = "Apple";
echo $apple->name;
?>