Quantcast
Channel: Últimos conteúdos
Viewing all articles
Browse latest Browse all 14190

Erro chamada de metodo estatico com spl_autoload_register

$
0
0

Galera sou novo nesse lance de autoload e namespaces...minha estrutura

 

classes

      |---conexao.class.php

modulos

     |--funcoes.php

login.php

 

conexao.class.php

namespace conexao;

define('PDO_TYPE', 'mysql');  
define('PDO_HOST', 'xxx'); 
define('PDO_DBNAME', 'xxx');  
define('PDO_CHARSET', 'utf8');  
define('PDO_USER', 'root');  
define('PDO_PWD', 'xxx');  

class Conexao{  
 
       private static $pdo;
 

       private function __construct() {  
         //  
       } 
     
  
       public static function getInstance() {  
         if (!isset(self::$pdo)) {  
           try {  
                $opcoes = array(
                 \PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES UTF8', 
                 \PDO::ATTR_ERRMODE => \PDO::ERRMODE_EXCEPTION,
                 \PDO::MYSQL_ATTR_USE_BUFFERED_QUERY => true,
                 \PDO::ATTR_PERSISTENT => false);
         
                self::$pdo = new \PDO(PDO_TYPE . ":host=" . PDO_HOST . "; dbname=" . PDO_DBNAME . "; charset=" . PDO_CHARSET . ";", PDO_USER, PDO_PWD, $opcoes); 
          
       } catch (PDOException $e) {  
         print "<code><strong>Erro:</strong> " . $e->getMessage().'</code>';  
           }  
         }  
         return self::$pdo;  
       }  
     }

funcoes.php

spl_autoload_register(function ($class) {
    require_once(strtolower(str_replace('\\', '/', $class.'.class.php')));    
});

login.php

    require_once 'modulos/funcoes.php';

    use classes\conexao;
    
   $pdo = new conexao();
   $pdo = Conexao::getInstance();

Ao entrar no arquivo login.php dá o erro:

 

Fatal error: Class 'classes\conexao' not found in C:\inetpub\wwwroot\data\login.php on line 5

 

Onde estou errando? obrigado!


Viewing all articles
Browse latest Browse all 14190