fork download
  1. <?php
  2.  
  3. // это
  4. $procurementDep->getEmpolyees("Manager", 1, false, 9);// 9 менеджеров 1 ранга.
  5.  
  6. /*....*/
  7. public function getEmpolyees($position, $rank, $boss, $quantity)
  8. {
  9. For ($i=1; $i<=$quantity; $i++)
  10. {
  11. $this->employees[] = new $position($rank, $boss);
  12. }
  13. }
  14. /* ... */
  15. //выглядело бы
  16. $procurementDep->getEmpolyees(['type' => "Manager", 'rank' => 2]);// 1 менеджер ранка 2, не босс
  17.  
  18. /*....*/
  19. public function getEmpolyees(array $parameters)
  20. {
  21. $default_parameters = ['type' => "Manager", "rank" => 1, "is_boss" => false, "quantity" => 1];
  22. $parameters = array_merge($default_parameters, $parameters);
  23. //вместо мержа с дефалтными настройками,
  24. //можно просто сделать проверку на наличие и в случае отсутствия выбросить исключение к примеру
  25.  
  26. For ($i = 1; $i <= $parameters['quantity']; $i++)
  27. {
  28. $this->employees[] = new $parameters['type']($parameters['rank'], $parameters['is_boss']);
  29. }
  30. }
  31. /* ... * /
Runtime error #stdin #stdout #stderr 0.01s 82880KB
stdin
Standard input is empty
stdout
Standard output is empty
stderr
PHP Parse error:  syntax error, unexpected 'public' (T_PUBLIC), expecting end of file in /home/RaC8Ea/prog.php on line 7