- var_dump: documentation ( source)
- class_exists: documentation ( source)
- func_get_args: documentation ( source)
- print_r: documentation ( source)
<?php
class Object {
//
protected $hasMany;
protected $theSignificativeProperties = ['nome', 'login'];
public function getHasMany() {
return $this->hasMany;
}
public function getSignificativeProperties() {
return $this->theSignificativeProperties;
}
}
class Aluno extends Object {
private $nome;
private $login;
protected $hasMany = ['post', 'disciplina'];
protected $theSignificativeProperties = ['nome', 'login'];
/*public function getHasMany() {
return $this->hasMany;
}*/
/*public function getSignificativeProperties() {
return $this->theSignificativeProperties;
}*/
}
class Post extends Object {
//
}
class Disciplina extends Object {
protected $hasMany = ['aluno'];
}
class EntityManager {
//
}
class RelationalEntityManager extends EntityManager {
public function find() {
//
echo 'Usando o RelationalEntityManager.';
}
}
class BaseController {
private $objectService;
public function __construct() {
$this->objectService = new BaseObjectService(new RelationalEntityManager());
}
public function view() {
$args = func_get_args();
$this->objectService->view($args);
}
}
class BaseObjectService {
private $em;
public function __construct(EntityManager $entityManager) {
$this->em = $entityManager;
}
public function view($args) {
//
echo 'Argumentos: ';
print_r($args);
$this->em->find();
}
}
echo 'Aluno: ' . class_exists('Aluno') . '<br>';
echo 'Teste: '; var_dump(class_exists('Teste')) . '\n';
$a = new Aluno();
print_r ( $a->getSignificativeProperties() );
$controller = new BaseController();
$controller->view('marcelo', 'boi', 1);