Código PHP:
function &getInstance() {
static $instance = null;
if (is_null($instance)) {
$instance = new Singleton();
}
return $instance;
}
Saludos

|
|
#1 (permalink) |
![]() Fecha de Ingreso: diciembre-2003
Ubicación: lima
Mensajes: 210
|
Código PHP:
Saludos ![]()
__________________
saludos :adios: |
|
|
|
|
|
#2 (permalink) |
|
Moderador
![]() ![]() Fecha de Ingreso: noviembre-2002
Ubicación: Santiago - Chile
Mensajes: 34.438
|
En general el & delante de una función o variable significa "como referencia" .. es decir, no se crea/duplica el valor o función sino que se llama a la original ...
Se usa mucho en programación orientada a objetos. Muevo tu pregunta al foro de PHP orientado a objetos pues lo que muestras es un "método" o parte de el de un objeto (classe). Un saludo, |
|
|
|
|
|
#3 (permalink) |
![]() Fecha de Ingreso: diciembre-2003
Ubicación: lima
Mensajes: 210
|
Cita:
No te entendi esta parte a que te refieres que busca el original?
Iniciado por Cluster
es decir, no se crea/duplica el valor o función sino que se llama a la original ...
__________________
saludos :adios: |
|
|
|
|
|
#4 (permalink) |
|
Moderador
![]() ![]() Fecha de Ingreso: noviembre-2002
Ubicación: Santiago - Chile
Mensajes: 34.438
|
Pues que no se crea otra instancia en memoria de la función o variable. Se toma lo que ya hay y no se crean duplicados.
http://www.php.net/manual/es/languag...riables.basics http://es.tldp.org/Manuales-LuCAS/ma.../funciones.htm En realidad eso de pasar una variable por "referencia" (con el &) o por "valor" (sin &) no depende de PHP (el concepto) .. Por eso, si quieres profundizar sobre el tema .. deberías buscar otro tipo de tutoriales. Un saludo, |
|
|
|
|
|
#5 (permalink) |
![]() |
el amperson al inicio de la funcion indica que la funcion en cuestion va a regresar una referencia, no un valor. Una referencia es una variable que lo unico que contiene es la direccion de memoria del contenido de otra variable. :p es algo confuso si nunca las has usado, lee los tutoriales que te envio cluster.
saludos
__________________
Se debe llamar GNU/Linux, no solamente Linux, mas info en: http://www.gnu.org/gnu/gnu-linux-faq.es.html |
|
|
|
|
|
#6 (permalink) |
![]() Fecha de Ingreso: noviembre-2002
Ubicación: Santiago
Mensajes: 649
|
esto es sin referencia:
$a = 1; $a = $b; ahora hay 2 valores = a 1 en memoria pero con referencia $a = 1; $a =& $b; ahora b y a apuntan a un valor de la varaible en memoria, = ambas valen 1, pero en el primer caso se usaron 2 porciones de memoria, aki la referencia apunta a la misma porcion de memoria. |
|
|
|
|
|
#7 (permalink) |
|
Colaborador
![]() Fecha de Ingreso: noviembre-2002
Mensajes: 9.107
|
Cita:
Mas bien el codigo es al reves:
Iniciado por ArrauKano
esto es sin referencia:
$a = 1; $a = $b; ahora hay 2 valores = a 1 en memoria pero con referencia $a = 1; $a =& $b; ahora b y a apuntan a un valor de la varaible en memoria, = ambas valen 1, pero en el primer caso se usaron 2 porciones de memoria, aki la referencia apunta a la misma porcion de memoria. $a = 1; $b = $a; y $a = 1; $b =& $a; Y para completar el ejemplo, a estos dos codigos añade: $a++; echo $b; En el primer caso, mostrara 1, mientras que en el segundo, mostrara 2. En el manual http://es.php.net/manual/en/language.references.php Saludos.
__________________
Josemi Aprendiz de mucho, maestro de poco. Localizacion de errores para principiantes en PHP (v 0.4 - 7/4/2003) Proyecto: Telendro , motor y sistema de bitacoras. Blog sobre el concurso de posicionamiento: Operación Telendro |
|
|
|