boa noite Meu código esta dando esse erro quando tento roda-lo no cmd
<?php
require 'Titular.php';
class Conta
{
private $titular; //atributos ou dados.
private float $saldo;
private static $numeroDeContas = 0;
public function __construct($titular)//metodos ou ações
{
$this ->titular = $titular; // $this referencia o objeto q chama a função
$this ->saldo = 0;
self::$numeroDeContas++;
}
public function sacar(float $valorASacar): void
{
if ($valorASacar > $this->saldo) {
echo "Saldo indisponível";
return;
}
$this->saldo -= $valorASacar;
}
public function depositar(float $valorADepositar): void
{
if ($valorADepositar < 0) {
echo "Valor precisa ser positivo";
return;
}
$this->saldo += $valorADepositar;
}
public function transferir(float $valorATransferir, Conta $contaDestino): void
{
if ($valorATransferir > $this->saldo) {
echo "Saldo indisponível";
return;
}
$this->sacar($valorATransferir);
$contaDestino->transferir($valorATransferir);
}
// Métodos Recuperar.
public function recuperarSaldo(): float
{
return $this->saldo;
}
public function recuperarNomeTitular(): string
{
return $this->titular->recuperarNome();
}
public function recuperarCpfTitular(): string
{
return $this->titular->recuperarCpf();
}
//... código omitido
public static function recuperarNumeroDeContas(): int
{
return Conta::$numeroDeContas;
}
}
<?php
require 'Conta.php';
class Titular
{
private string $cpf;
private string $nome;
public function __construct(string $cpf, string $nome)
{
$this->cpf = $cpf;
$this->validarNomeTitular($nome);
$this->nome = $nome;
}
private function validarNomeTitular(string $nomeTitular)
{
if (strlen($nomeTitular) < 5) { // strlen = tamanho da string
echo "Nome precisa ter pelo menos 5 caracteres";
exit();
}
}
public function recuperarCpf()
{
return $this->cpf;
}
public function recuperarNome()
{
return $this->nome;
}
}
~
<?php
require 'Conta.php';
require 'Titular.php';
$primeiraConta = new conta(new titular('123.456.789-10','Thiago Felipe'));
$segundaConta = new conta(new titular('987.456.123-01', 'Aline Torres'));
var_dump($primeiraConta);
var_dump($segundaConta);
$primeiraConta -> depositar(1000);
$segundaConta -> depositar (3500);
echo $primeiraConta -> recuperarNomeTitular() . PHP_EOL;
echo $primeiraConta -> recuperarCpfTitular() . PHP_EOL;
echo $primeiraConta -> recuperarSaldo() . PHP_EOL;
echo $segundaConta -> recuperarSaldo() . PHP_EOL;
echo $segundaConta -> recuperarNomeTitular() . PHP_EOL;
echo $segundaConta -> recuperarCpfTitular() . PHP_EOL;