Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

carcleo

namespace php7 não acha URL?

Mensagens Recomendadas

carcleo

Estou tentando aprender namespace mas estou tendo dificuldade.

Mesmo fazendo exatamente como está em um vídeo no youtube, mas não dá certo.

Tenho a pasta do projeto

Citação

Projeto
Projeto\Cadastros
Projeto\Cadastros\Index.php
Projeto\Cadastros\Pessoa
Projeto\Cadastros\Pessoa\Pessoa.php
Projeto\Cadastros\Teste
Projeto\Cadastros\Teste\Pessoa.php


Index.php

<?php
 
 ini_set("display_errors",true);
 ini_set("display_startup_erros",1);
 error_reporting(E_ALL && E_NOTICE);
 error_reporting( E_ALL | E_STRICT ); // PHP 5.3
 error_reporting( E_ALL ); // Todas as outras versões 

 $pessoa = new Pessoa(1, 40, "Carlos");
 
 $pessoa2 = new Pessoa2();
 $pessoa2->setIdPessoa(1);
 $pessoa2->setIdadePessoa(43);
 $pessoa2->setNomePessoa("Cleonice");
 
 
 echo $pessoa->getIdPessoa()."<br >";
 echo $pessoa->getNome()."<br >";
 echo $pessoa->getIdadePessoa()."<br >";
 
 echo "<br />";
 
 echo $pessoa2->getIdPessoa()."<br >";
 echo $pessoa2->getNomePessoa()."<br >";
 echo $pessoa2->getIdadePessoa()."<br >"; 


?>

Pessoa.php

<?php

namespace Cadastros\Pessoa\Pessoa;

Class Pessoa {
    
    private $idPessoa;
    private $idadePessoa;
    private $nome;
    
    public function __construct ($_idPessoa, $_idadePessoa, $_nome) {
        $this->idPessoa = $_idPessoa;
        $this->idadePessoa = $_idadePessoa;
        $this->nome = $_nome;
    }
    
    public function getIdPessoa () {
        return $this->idPessoa;
    }
    
    public function getIdadePessoa () {
        return $this->idadePessoa;
    }
    
    public function getNome () {
        return $this->nome;
    }
}


?>

Pessoa.php

<?php

namespace Cadastros\Teste\Pessoa;

Class Pessoa {
    
    private $idPessoa;
    private $idadePessoa;
    private $nomePessoa;
    
    public function __construct () {}
        
    
    public function setIdPessoa ($_idPessoa) {
        $this->idPessoa = $_idPessoa;
    }    
    
    public function setIdadePessoa ($_idadePessoa) {
        $this->idadePessoa = $_idadePessoa;
    }    
    
    public function setNomePessoa ($_nomePessoa) {
        $this->nomePessoa = $_nomePessoa;
    }
    
    public function getIdPessoa () {
        return $this->idPessoa;
    }
    
    public function getIdadePessoa () {
        return $this->idadePessoa;
    }
    
    public function getNomePessoa () {
        return $this->nomePessoa;
    }
}


?>

Erro

Citação

 

Fatal error: Uncaught Error: Class 'Pessoa' not found in C:\Program Files\Apache24\Apache24\htdocs\funerariasaopedro.net.br\Cadastros\index.php:19 Stack trace: #0 {main} thrown in C:\Program Files\Apache24\Apache24\htdocs\funerariasaopedro.net.br\Cadastros\index.php on line 19


 

O que está de errado?

Editado por carcleo

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
carcleo

Oi, isso é tudo o que eu fiz.

O que mais precisa ser feito?

Na minha opinião, o namespace vem para substituir o require_once (includes da vida). 

Mas se tiver mais coisa a se fazer o require_once fica bem mais simples. 

 

Não é não?

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.