Я даже не уверен, как спросить. Я делаю это все время в C #, но я не могу найти достойных примеров в PHP. Вы можете помочь?
Например, я пытаюсь это сделать. Скажем, у меня есть класс под названием Компания, в котором много сотрудников.
Я хочу иметь возможность хранить всех сотрудников в классе компании, а потом, когда я перебираю объект Company, мне нужно иметь возможность перебирать всех сотрудников, назначенных этой компании, и у меня чертовски время, пытаясь найти прямой пример.
Я могу заполнить его, но из-за своей жизни я не могу пройтись по Сотрудникам. Я знаю, что делаю что-то не так, но не могу понять это. Вот что у меня есть например.
Сотрудник
Это может быть совершенно неправильно для всех, что я знаю, как вернуть данные.
class Employee
{
private $first;
private $last;
public function __construct($first = null, $last = null)
{
if(isset ($first))
$this->first = $first;
if(isset ($last))
$this->last = $last;
}
public function getEmployee()
{
return Employee($this->first, $this->last);
}
public function getFirst()
{
return $this->first;
}
public function getLast()
{
return $this->first;
}
}
Компания имеет множество сотрудников.
В c # я бы использовал что-то вроде универсального
public List<Employee> Employees {get;set;}
Тогда в конструкторе я бы сделал что-то вроде
Employees = new List<Employee>();
Тогда я мог бы сделать что-то вроде
foreach(var x in Customer.Employees)
x.first;
Это то, что я пытаюсь сделать.
class Company
{
private $companyName;
private $employees;
public function __construct($nameOfCompany)
{
$this->companyName = $nameOfCompany;
}
public function setEmployee(Employee $employee)
{
$this->employees[] = $employee;
}
public function getCompanyName()
{
return $this->companyName;
}
public function setCompanyName($nameOfCompany)
{
$this->companyName = $nameOfCompany;
}
public function getEmployees()
{
return $this->employees;
}
}
Создать и заполнить
$c = new Company("Test");
$c->setEmployee(new Employee('A','B'));
$c->setEmployee(new Employee('C','D'));
$c->setEmployee(new Employee('E','F'));
До этого момента все хорошо.
Получить название компании без проблем.
echo $c->getCompanyName();
echo "";
print_r($c);
echo "
";
Но как мне прокрутить сотрудников?
Я хочу иметь возможность сделать что-то вроде приведения сотрудников компании в цикл к одному сотруднику, а затем сделать что-то вроде
foreach(customers employees)
echo Employee->getFirst, etc...
Может кто-нибудь дать какое-нибудь руководство?
Спасибо