у меня мало интуитивных знаний о подсказках типов и пространствах имен. Поэтому я составил следующий код для работы с обеими концепциями. У меня есть три php-страницы, содержащие три класса в одном каталоге. Они--
1.Студент.php
2.Учреждение.php
3.enroll.php.
Я хочу использовать оба класса Student and Institution
внутри класса enroll
. Я применил namespaces
в обоих классах Student and Institution
. И use
их внутри класса enroll. Но что-то здесь не так. Я получаю следующие ошибки:
Предупреждение. Оператор use с несоставным именем «Студент» не действует в C:\xampp\htdocs\practice\typehint\enroll.php в строке 2.
Предупреждение: оператор использования с несоставным именем «Институт» не действует в C:\xampp\htdocs\practice\typehint\enroll.php в строке 3.
Неустранимая ошибка: класс «Студент» не найден в C:\xampp\htdocs\practice\typehint\enroll.php в строке 10
кто-нибудь может объяснить, что здесь не так и как это исправить?
student.php
namespace Student;
class Student{
public $name;
publci function __construct($value){
$this->name=$value;
}
}
institute.php
namespace Institute;
class Institute{
public $institute;
public function __construct($val){
$this->institute=$val;
}
}
enroll.php
use Student;
use Institute;
class enroll{
public function __construct(Student $student,Institute $institute){
echo $student->name.' enrolled in '.$institute->institute.' school .';
}
}
$student=new Student('zami');
$institute=new Institute('Government Laboratory High School');
$enroll=new enroll($student,$institute);