4
respostas

~Eu trago a classe com o require mas na hora de criar a referência diz que a classe não foi encontrada

Eu chequei o caminho, o nome da classe e não entendi porque ocorre isso ainda. Estou testando a classe mais básica do curso CPF mas ocorre o mesmo problema com outras.


php > require 'C:\Users\rlirio\Documents\ProjetoPHP\Modelo\cpf.php';
php > $aaa = New cpf('111111');
PHP Warning:  Uncaught Error: Class 'cpf' not found in php shell code:1
Stack trace:
#0 {main}
  thrown in php shell code on line 1

Warning: Uncaught Error: Class 'cpf' not found in php shell code:1
Stack trace:
#0 {main}
  thrown in php shell code on line 1
php >                                                                                                 
4 respostas
<?php


namespace Alura\Banco\Modelo;

Class CPF {

private    $cpf;


 public function  __construct ( string $cpf) {

    $this -> cpf = $cpf;

   }


public function recuperaCPF() : string {

    return $this-> cpf;
}

Se eu tiro 'namespace' funciona corretamente. Eu coloquei 'Alura\Banco', eu me pergunto se não deveria colocar o nome da Pasta Raiz, que é ProjetoPHP

Acho que não seria necessário, colocando somente o nome da pasta do mesmo nível que arquivo se encontra já funciona. Você poderia também utilizar o require_once que verificará se o arquivo já foi incluído, não o incluirá novamente.

Eu tentei o nome da pasta no mesmo nível e não funcionou. ):