oop — функция PHP не будет принимать значения переменных

Я написал это, поскольку я изучаю ООП PHP. У меня были некоторые проблемы с передачей значений переменных в функции. но оказывается, что функции не будут читать значения переменных. Пожалуйста, смотрите ниже и советуйте.

<?phpclass calculator {

private $num1 = '1';
private $num2 = '2';

public function complete() {

return $num1 * $num2;

}

}

$calc = new calculator();
$result = $calc->complete();

echo $result;

-1

Решение

public function complete() {

return $num1 * $num2;

}

Нет переменной $num1 или же $num2 создан в этой функции. Конечно не «читать значения переменных».

Что вы хотите, вероятно, это:

public function complete() {

return $this->num1 * $this->num2;

}

Вы читали главу о классы и объекты в руководстве по PHP?

0

Другие решения

Вы должны изменить это:

$this вы получаете доступ к свойству класса, а не к любой переменной)

public function complete() {

return $num1 * $num2;

}

к этому:

public function complete() {

return $this->num1 * $this->num2;
//^^^^^ See here^^^^^

}
5