Ver Mensaje Individual
  #3 (permalink)  
Antiguo 11/02/2013, 11:38
Avatar de Fylux
Fylux
 
Fecha de Ingreso: junio-2012
Mensajes: 141
Antigüedad: 12 años, 4 meses
Puntos: 9
Respuesta: Duda patron singleton

Cita:
Iniciado por pateketrueke Ver Mensaje
Claro que es posible, pero entonces debes aplicar otro patrón: Proxy.

De manera automática no es posible, pero usando un proxy puedes ejecutar lo que desees usando métodos mágicos.

Código PHP:
class DB
{
  private static 
$mysql;

  public static function 
__callStatic($method$arguments)
  {
    return 
call_user_func_array(array(static::$mysql$method), $arguments);
  }

  private static function 
instance()
  {
    if (! static::
$mysql) {
      static::
$mysql /* conexión usando objetos */;
    }

    return static::
$mysql;
  }

Que claro, para esto debes usar la versión OOP de la conexión en cuestión, de preferencia hay que usar PDO.

Usando funciones mysql_connect() y así también se puede, pero requiere un poco más de esfuerzo.
Gracias por el aporte.
También he encontrado este que lo acabo de usar y me va bien, ¿es correcto?
Código PHP:
<?php
class DB
{
private static 
$dbLink;

private function 
__construct() {}
private function 
__clone() {}

public static function 
Get()
{
    if(!
self::$dbLink)
    {
        
self::$dbLink = new mysqli(DB_HOST,SQL_USER,SQL_PASS,DB_NAME);
        
self::$dbLink->set_charset(DB_CHARSET);
        if(
mysqli_connect_errno())
        {
            throw new 
Exception("Database connection failed: ".mysqli_connect_error());
        }
    }
    return 
self::$dbLink;
    }
}
?>
Saludos.
__________________
Si todos escribiéramos sin faltas de ortografía, el mundo sería un lugar mejor.