segunda-feira, 5 de março de 2012

Usando classe "extends".


<?
class MensagemSimples{
protected $titulo;
protected $texto;

protected function setTitulo($valor){
$this->titulo = $valor;
}

protected function setTexto($valor){
$this->texto = $valor;
}

function printTitulo($valor){
$this->setTitulo($valor);
echo $this->titulo;
}

function printTexto($valor){
$this->setTexto($valor);
echo $this->texto;
}
}

class MensagemBonita extends MensagemSimples{
protected $cor;

public function setCor($cor){
$this->cor=$cor;
}

public function imprime($titulo,$texto){
$mensagem = '<h1 style="color: '.$this->cor.'":>'.$titulo.'</h1><p>'.$texto.'</p>';
echo $mensagem;
}
}

$msg = new MensagemBonita;
$msg->setCor('Red');
$msg->imprime('Titulo da Mensagem','Texto da mensagem');

?>

Terceiro dia de estudo de PHPOO


<?
//Usando propriedades (variáveis) do tipo protected

class MensagemSimples {
      protected $titulo;
      protected $texto;


function setTitulo($valor){
$this->titulo = $valor;
}

function setTexto($valor){
$this->texto = $valor;
}

function printTitulo(){
echo $this->titulo;
}

function printTexto(){
echo $this->texto;
}
}

$msg = new MensagemSimples; //Criando o objeto, instanciando a classe

//Atribuindo valores às propriedades (variáveis)
$msg->setTitulo('Titulo da mensagem');
$msg->setTexto('Mensagem de Teste');

//Exibindo os valores atribuidos na propriedade no navegador
$msg->printTitulo();
echo '<br>';
$msg->printTexto();

?>




<?
//Usando função do tipo protected


class MensagemSimples {
      protected $titulo;
      protected $texto;


protected function setTitulo($valor){
$this->titulo = $valor;
}

protected function setTexto($valor){
$this->texto = $valor;
}

function printTitulo($valor){
$this->setTitulo($valor);
echo $this->titulo;
}

function printTexto($valor){
$this->setTexto($valor);
echo $this->texto;
}
}

$msg = new MensagemSimples; // Criamos o objeto instanciando a classe.

// Recuperando os valores das propriedades. Para que funcione, não podemos acessar diretamente as funções protected. Para acessá-las precisamos usar de forma indireta.

$msg->printTitulo('Título da mensagem');
echo '<br>';
$msg->printTexto('Mensagem de teste.<br>Testando a visibilidade das propriedades.');
?>