Olá, queria saber o poder que desses erros, do dois Warning , e como faz para retira eles da tela, por que acaba incomodando. Estou deixando a baixo o código!
Warning: The use statement with non-compound name 'validacao' has no effect in C:\Users\Bruno\Alura\Tratamento\index.php on line 10 *
Warning: The use statement with non-compound name 'ContaCorrente' has no effect in C:\Users\Bruno\Alura\Tratamento\index.php on line 11 *
--------------------------------------------INDEX--------------------------------------
<?php
ini_set('display_errors',1);
error_reporting(E_ALL);
header('Content-Type: text/html; charset=utf8');
include "autoload.php";
use validacao;
use ContaCorrente;
$contaJoao = new ContaCorrente("Joao", "1212", "343477-9", 2000.09);
$contaMaria = new ContaCorrente("Maria", "1212", "343423-9", 6000.57);
$contaJose = new ContaCorrente("Jose", "13312", "34233423-9", 60030.57);
$contaFernanda = new ContaCorrente("Fernanda", "13312", "13423423-9", 60030.57);
$contaBernardo = new ContaCorrente("Bernardo", "13312", "23423423-9", 60030.57);
$contaFelipe = new ContaCorrente("Felipe", "13312", "33423423-9", 60030.57);
$contaLucas = new ContaCorrente("Lucas", "13312", "43423423-9", 60030.57);
echo "<br>";
echo "Total de contas: ". ContaCorrente::$totalDeContas;
echo "<br>";
echo "taxa: ". ContaCorrente::$taxaOperacao;
echo "<br>";
echo "<h1>Contas Correntes</h1>";
echo "<h2>Conta Corrente: Titula: " . $contaJoao->getTitular()."</h2>";
echo "<pre>";
var_dump($contaJoao);
echo "</pre>";
try {
$contaJoao->transferir(2300, $contaMaria);
} catch(\InvalidArgumentException $error) {
echo "Invalid Argument ";
echo $error->getMessage();
} catch(\exception\SaldoInsuficienteException $error) {
$contaJoao->totalSaquesNaoPermitidos ++;
echo "Capturando Exception ";
echo $error->getMessage();
} catch(\Exception $error) {
echo "Exception ";
echo $error->getMessage();
}
echo "<pre>";
var_dump($contaJoao);
echo "</pre>";
---------------------------------------ContaCorrente----------------------------------
<?php
use exception\SaldoInsuficienteException;
class ContaCorrente {
private $titular;
private $agencia;
private $numero;
private $saldo;
public static $totalDeContas;
public static $taxaOperacao;
public $totalSaquesNaoPermitidos;
public function __construct($titular, $agencia, $numero, $saldo){
$this->titular = $titular;
$this->agencia = $agencia;
$this->numero = $numero;
$this->saldo = $saldo;
self::$totalDeContas ++;
try{
if(self::$totalDeContas < 1) {
throw new Exception("Valor inferior a zero");
}
self::$taxaOperacao = (30 / self::$totalDeContas);
}catch(Exception $erro){
echo $erro->getMessage();
exit;
}
}
public function sacar($valor) {
validacao::verificaNumero($valor);
if($valor > $this->saldo) {
throw new SaldoInsuficienteException("Saldo Insuficiente");
}
$this->saldo = $this->saldo - $valor;
return $this;
}
public function depositar($valor) {
$this->saldo = $this->saldo + $valor;
return $this->titular;
}
public function transferir($valor, ContaCorrente $contaCorrente) {
validacao::verificaNumero($valor);
if($valor < 0){
throw new Exception("O valor não é permitido");
}
$this->sacar($valor);
$contaCorrente->depositar($valor);
return $this;
}
public function getTitular(){
return $this->titular;
}
public function __get($atributo) {
validacao::protegeAtributo($atributo);return $this->$atributo;
}
public function __set($atributo, $valor) {
validacao::protegeAtributo($atributo);
$this->$atributo = $valor;
}
public function setNumero($numero){
return $this->numero = $numero;
}
private function formatarSaldo() {
return "R$ ".number_format($this->saldo, 2,",",".");
}
public function getSaldo() {
return $this->formatarSaldo();
}
public function __toString() {
$this->saldo;
}
}
-----------------------------------SaldoInsuficienteException---------------------------
<?php
namespace exception;
class SaldoInsuficienteException extends \Exception{
public function __construct($mensagem, $codigo = null, $ex = null){
parent::__construct($mensagem, $codigo, $ex);
}
}
?>