Tengo un proyecto PHP y necesito almacenar información de acceso a MySQL.
Tengo un archivo config.php fuera del directorio público y en el archivo que tengo:
class Config
{
const host = "dbserver";
const name = "dbname";
const user = "dbuser";
const pass = "dbpass";
}
Luego, en init.php (también fuera del directorio público) tengo funciones de ayuda y otras cosas:
include "config.php";
$db = MySQLWrapper(Config::host, Config::name, Config::user, Config::pass);
//... init sessions, spl_autoloads, class maps and other stuff
Ahora en el directorio público de www, tengo index.php:
require_once "full path to init.php"
create page
¿Es este un diseño bueno y seguro? ¿O hay algún problema con la clase const?
No quiero usar directamente las variables o la matriz, porque si alguien accidentalmente permite registros de errores en el servidor, las contraseñas en las variables podrían filtrarse en el registro de errores a través de la impresión de depuración de las variables.