#php
#php
Вопрос:
Я пытаюсь решить эту проблему на веб-сайте codewars:
Исправьте этот код, чтобы greet
функция возвращала ожидаемое значение.
class Person {
public $name;
public function __construct($name) {
$this->name = $name;
}
public function greet($guest) {
return 'Hello $guest, my name is $name';
}
}
Где ошибка?
Комментарии:
1. Если вы не можете решить хотя бы упражнение по регистрации, возможно, вам следует сначала изучить язык программирования по вашему выбору, немного попрактиковаться, а затем вернуться к codewars.
Ответ №1:
Сложный (фигурный) синтаксис работает только с двойными кавычками ""
Меняем его следующим образом:
class Person {
public $name;
public function __construct($name) {
$this->name = $name;
}
public function greet($guest) {
return "Hello $guest, my name is {$this->name}";
}
}
Вывод:
$x = new Person('john');
echo $x->greet('peter');
//Hello peter, my name is john
Комментарии:
1. извините, правильная строка на веб-сайте: return ‘Привет, $guest, меня зовут $name’;
2. Я только что протестировал его, и он прошел тест.