Es para que no hagan instancias directas de esa clase. y ya de paso vi que tengo un error de implementan al usar las variables estáticas te dejo el fragmento de código corregido.
Código PHP:
Ver originalclass DataBaseObject {
private static $instance = null;
public static function getInstance() {
if(self::$instance === null) {
self::$instance = new mysqli($servidor,$usuario,$clave,$db);
}
return self::$instance;
}
private function __construct() {}
private function __clone() {}
}
//para usar
$db = DataBaseOBject::getInstance();
$db->query();
//....