Ir para conteúdo
Fórum Script Brasil
  • 0

Chamar um metodo de uma classe, em um outro arquivo, em diretório diferentes.


metalbolic

Pergunta

Boa Tarde!!!

Pessoal.,

Creio eu que fiz tudo correto criei uma classe no padrão singleton, e preciso agora trabalhar com essa classe, porém, crio outro arquivo num diretório diferente para utilização da classe e não consigo, não me retorna erro, nem exceções.

Exemplo da classe:

<?php

namespace aplicativo\configuracoes;

final class instanciabd {
    private static $instancia= null;
    private $opcoes= array (
        \PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8",
        \PDO::ATTR_PERSISTENT => true);
    private $conexao= null;
    
    final private function __construct() {}
    final private function __close() {
        throw new \Exception("Erro");
    }
    final private function __wake() {
        throw new \Exception("Erro");
    }
    
    final public static function obterinstancia() {
        if(self::$instancia === null) {
            self::$instancia= new instanciabd();
        }
        else {
            return self::$instancia;
        }
    }
    
    final public function obterconexao(array $config) {
        if($this->conexao === null) {
            try {
                $this->conexao= new \PDO($config['driver'] . ":host=" . 
                $config['server'] . ";dbname=" . $config['dbname'],
                $config['usuario'], $config['senha'], $this->opcoes);
                return $this->conexao;
            } catch (\Exception $erropdo) {
                die("Erro: " . $erropdo->getMessage() . "<br />" . 
                $erropdo->getTrace());
            }
        } else {
            return $this->conexao;
        }
    }

}

Utilizo NetBeans 8, para desenvolvimento.

Continuando, crio o seguinte arquivo para manipulação

<?php

namespace aplicativo;

require_once '\..\aplicativo\configuracoes\instanciabd.classe.php';

$instanciabanco= configuracoes\instanciabd::obterinstancia();

$conexaobanco= $instancia-> (Aí está o problema, não aparece o metodo
obterconexao para ser chamado, nem atritubos nada.)

//Quando executo
var_dump($instanciabanco);

//Retorna: Um objetivo, com o atributo conexão= NULL;

Espero que alguém posso me ajudar, grato antecipadamente.

Editado por metalbolic
Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,8k
×
×
  • Criar Novo...