У меня есть следующий код, где я получаю ошибку «PHP Fatal Error: Constant expression contains invalid operations». Не могу исправить?
Вот само задание пытаюсь его сделать
Создайте класс Worker в отдельном файле. Данный класс будет хранить добавленных работников, выводить их список и сохранять в список в отдельном файле
Класс должен содержать:
Статическое, приватное свойство workers (массив).
Статический, публичный метод create.
Статический, публичный метод all.
Статический, публичный метод save.
Метод create должен принимать в качестве аргумента $worker (массив), состоящий из полей name (имя пользователя), email (адрес электронной почты), age (возраст) и profession (профессия). Полученный массив он должен добавлять в свойство workers, заведомо добавив в аргумент $worker поле register_time, в которое нужно занести временную метку, когда пользователь был добавлен в формате День-Месяц-Год Час:Минуты. Кроме того, нужно проверять, что все поля в массиве $worker не пустые, в противном случае этот массив добавлять в свойство workers - не нужно.
Выдает ошибку
Fatal error: Constant expression contains invalid operations in
Workers.php
<?php
class Worker{
public $name;
public $email;
public $age ;
public $prof;
public function __construct($name, $email, $age, $prof) {
$this->name = $name;
$this->email = $email;
$this->age = $age;
$this->prof = $prof;
}
public static $workers = [ // тут выдает ошибку
"name" => "$this->name",
"email" => "$this->email",
"age" => "$this->age",
"profession" => "$this->prof",
"register_time" => 'hgh'
];
}
?>
Скажите, а вы этому коду кто?
Почему вы вдруг решили его писать?
Вы же явно классы в РНР видите впервые в жизни.
Может быть, сначала немного подтянуть уровень знаний, а потом уже браться за такие задания?
А то у вас настолько большие проблемы с синтаксисом, что на осмысление бизнес-логики уже сил никаких не остаётся, и в итоге получается редкостный бред.
Вот само задание пытаюсь его сделать
Создайте класс Worker в отдельном файле. Данный класс будет хранить добавленных работников, выводить их список и сохранять в список в отдельном файле
Класс должен содержать:
Статическое, приватное свойство workers (массив).
Статический, публичный метод create.
Статический, публичный метод all.
Статический, публичный метод save.
Метод create должен принимать в качестве аргумента $worker (массив), состоящий из полей name (имя пользователя), email (адрес электронной почты), age (возраст) и profession (профессия). Полученный массив он должен добавлять в свойство workers, заведомо добавив в аргумент $worker поле register_time, в которое нужно занести временную метку, когда пользователь был добавлен в формате День-Месяц-Год Час:Минуты. Кроме того, нужно проверять, что все поля в массиве $worker не пустые, в противном случае этот массив добавлять в свойство workers - не нужно.