Na aula quando o professor pede para bloquear os atributos "titular" e "saldo" o atributo agência também é bloqueado.
contacorrente.php
<?php
class contacorrente
{
private $titular;
private $agencia;
private $numero;
private $saldo;
public function __construct($titular, $agencia, $numero, $saldo)
{
$this->titular = $titular;
$this->agencia = $agencia;
$this->numero = $numero;
$this->saldo = $saldo;
}
//metodo para sacar
public function sacar($valor){
$this->saldo = $this->saldo - $valor;
return $this;
}
//metodo para depositar
public function depositar($valor){
$this->saldo = $this->saldo + $valor;
return $this;
}
/*
// formas de liberar para visualizar e alterar individualmente cada atributo
//liberando para consultar titular
public function gettitular(){
return $this->titular;
}
//liberando para consultar saldo
public function getsaldo(){
return $this->saldo;
}
//liberando para alterar o titular
public function settitular($titular){
return $this->titular = $titular;
}
//liberando para alterar o saldo
public function setsaldo($saldo){
return $this->saldo = $saldo;
}
*/
private function protegeatributo ($atributo){
if ($atributo == "titular" || $atributo == "saldo") {
return false;
}
}
public function __get($atributo)
{
$this->protegeatributo($atributo);
//$this->$atributo;
}
public function __set($atributo, $valor){
$this->protegeatributo($atributo);
//$this->$atributo = $valor;
}
//funçao para formatar o saldo
public function formatasaldo (){
return number_format ($this->saldo, 2, ",", ".");
}
}
index.php
<?php
require "contacorrente.php";
$contajoao = new contacorrente("joao","0783", "21867-3","500");
$contamaria = new contacorrente("maria","4831", "71321-3", "1000");
var_dump($contajoao);
var_dump($contamaria);
//echo $contajoao->saldo;
//$contajoao->sacar("400") ->depositar(770);
//$contamaria->depositar("1000") ->sacar(25);
var_dump($contajoao);
var_dump($contamaria);
echo "antiga agencia maria: {$contamaria->agencia} , saldo antigo da maria: {$contamaria->formatasaldo()}";
$contamaria->agencia = "2734";
$contamaria->saldo = "50000";
echo PHP_EOL . " nova agencia da Maria: $contamaria->agencia , novo saldo a maria: {$contamaria->formatasaldo()}";
Onde pode estar o erro?