Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Gente, eu estava estudando orientação a objetos, e na parte de interface, surgiu uma duvida...
O que eu quero fazer é o seguinte
Quem já usou Zend Framework , sabe que os modelos herdam automaticamente as funções insert, update, remove.
Bom, então eu queria executar por exemplo
Classe Bradesco.
$bradesco = new Bradesco();
$bradesco->insert();
É isso... Abaixo segue o meu codigo
$noticias = new Noticias();
$noticias->insert(array());
$noticias->update(array(),where);
$noticias->remove(where);
// EDIT : Consegui fazer o que eu queria, vou postar aqui para verificarem se ta tudo certo
A Unica coisa que não entendi é o uso da interface, ela seria só um "modelo" ? nesse caso nem precisaria ?
Usando uma classe abstrata, eu ganho desempenho ?
eu tenho 3 módulos.
Itau
Bradesco
Hsbc
A interface Banco
Banco.php
interface Banco {
public function insert();
public function update();
public function remove();
}
Classe abstrata Db
Db.php
<?php
abstract class Db implements Banco {
public function insert() {
echo "Registro inserido no ".$this->banco.PHP_EOL;
}
public function update() {
echo "Registro atualizado no ".$this->banco.PHP_EOL;
}
public function remove() {
echo "Registro removido no ".$this->banco.PHP_EOL;
}
}
Itau
itau.php
<?php
class Itau extends Db{
public $banco = "itau";
}
Bradesco
bradesco.php
<?php
class Bradesco extends Db {
public $banco = "bradesco";
}
Hsbc
Hsbc.php
<?php
class Hsbc extends Db {
public $banco = "Hsbc";
}
Index
index.php
<?php
function __autoload($class) {
require_once ("class/".$class.".php");
}
$bradesco = new Bradesco();
$hsbc = new Hsbc();
$itau = new Itau();
$hsbc->insert();
$itau->insert();
$bradesco->insert();;
Resultado
Registro inserido no hsbc
Registro inserido no itau
Registro inserido no bradesco
Carregando comentários...