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.
Pergunta
metalbolic
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:
Utilizo NetBeans 8, para desenvolvimento.
Continuando, crio o seguinte arquivo para manipulação
Espero que alguém posso me ajudar, grato antecipadamente.
Editado por metalbolicLink para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
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.