Ciao!
Sto costruendo una semplice applicazione di connessione ad un database MySQL e durante una verifica (in locale) a mezzo var_dump() mi sono accorto di una cosa che prima non mi capitava mai, ovvero nel link di riferimento alla connessione (OOP) non c'è solo l'handle della connessione ma anche la stringa di identificazione del database, il nome utente e la password
Ecco un esempio: ( var_dump($link); )
Ovviamente nomi e password qui sono mascherati ma per il resto il mistero resta.Database Object ( [link] => PDO Object ( ) [pass_Database_private] => Array ( [user] => password [root] => password ) [dsn_Database_Private] => mysql:dbname=bibliography;host=localhost [root_Database_Private] => )
---- al posto degli unserscore ( _ ) ci vanno i due punti ( : ) ma mettendoceli il forum mi riempie la stringa di icone ----
La classe che ho creata e che mi connette al DB è quella sottostante.
richiamata medianteCodice PHP:class Database {
public $link = null;
private $pass = array('user' => 'password', 'root' => 'password');
private $dsn = 'mysql:dbname=bibliography;host=localhost';
public function __construct($utente = 'user') {
try {
if ($this->link == null) {
$this->link = new PDO($this->dsn, $utente, $this->pass[$utente], array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''));
$this->link->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
$this->link->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
} // fine try
catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
catch (Exception $e) {
echo 'Connection failed: ' . $e->getMessage();
}
} // __construct()
public function __destruct() {
unset($this->link);
$this->root = false;
} // __destruct
} // Fine classe database
e se faccio il var_dump() alla variabile $link mi esce quella robaCodice PHP:$link = new Database();
e non mi era mai successo prima di ora (versione attuale del PHP 5.4.16 (MySQL 5.0.10).
Qualcuno me la sa spiegare cortesemente?


e non mi era mai successo prima di ora (versione attuale del PHP 5.4.16 (MySQL 5.0.10).
Rispondi quotando
repare() in C:\WWW\StilisticaMente\BIZ\SM_TOOLS\bibliography.p hp on line 76