Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class Vector {
- public vetorDeObjetos = [];
- public function Add(Oobjeto $obj){ // vc adiciona um objeto da classe ali embaixo aqui.
- $this->vetorDeObjetos[$obj->id] = $obj;
- }
- public function edit(int $id, Oobjeto $obj){
- foreach($this->vetorDeObjetos as $objeto): // Passa por todo array de objetos e edita o objeto no qual o atributo id
- // é igual ao $id passado como argumento do método
- if($objeto->id == $id){
- $this->vetorDeObjetos[$id] = $obj;
- }
- endforeach;
- }
- public function delete(int $id){
- foreach($this->vetorDeObjetos as $objeto):
- if($objeto->id == $id){
- if($id == 0){
- array_shift($this->vetorDeObjetos); // Nao se pode deletar a chave 0 de um array diretamente.tem uma
- //função pra isso..array_shift
- }else{
- unset($this->vetorDeObjetos[$id]);
- }
- }
- endforeach
- }
- public function search(int $id){
- return $this->vetorDeObjetos[$id];
- }
- }
- class Oobjeto {
- private $id;
- private $nome;
- public function creador(Array $dados){ // não construtor.. pra nao precisar instanciar toda hora o objeto
- $this->id = $dados['id'];
- $this->nome = $dados['nome'];
- }
- }
- $vector = new Vector; // Instancia um objeto da classe VETOR.
- echo "Aqui o menu com as opções -Adicionar(0) -Editar(1) -Deletar(2) -Procurar(3)";
- $get = isset($_GET['response']) ? $_GET['response'] : null;
- $obj = new Oobjeto // Instancia um objeto da classe Oobjeto pra poder fazer as operações.
- switch($get):
- case 0:
- $obj->creador(isset($_GET['dados']) ? $_GET['dados'] : null); // Os dados seriam id e nome.
- $vector->add($dado);
- break;
- case 1:
- $obj->creador(isset($_GET['dados']) ? $_GET['dados'] : null); // Os dados seriam id e nome.
- $vector->edit($id, $dados);
- break;
- case 2:
- $id = isset($_GET['id']) ? $_GET['id'] : null;
- $vector->delete($id);
- break;
- case 3:
- $id = isset($_GET['id']) ? $_GET['id'] : null;
- $vector->search($id);
- break;
- Default:
- echo 'Opção inválida';
- exit();
- endswitch;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement