En PHP, las funciones por referencia son declaradas para que el valor que retorna sea por referencia, lo que le permite devolver una variable como el resultado de la función, en lugar de una copia.
El compartamiento nativo de PHP es la devolución de una copia para cada tipo de dato excepto para los objetos.
Normalmente, esto se usa para cosas como los recursos (como las conexiones de base de datos) y durante la ejecución del patrón de diseño Factory.
Ejemplo de decalaración de funciones por referencia en PHP
Para la declaración de la función se debe anteponer el ampersand (&) en la función.
1 2 3 4 5 |
function &query($sql) { $result = mysql_query($sql); return $result; } |
La llamada a la función se debe realizar de manera normal.
1 |
$result = query($sentencia); |
Tipo de dato para funciones por referencia en PHP
Con referencia al tipo de dato a retornar, hay una advertencia: hay que devolver una variable, no se puede devolver una expresión por referencia, o utilizar una sentencia de retorno vacío para forzar un valor de retorno NULL.
1 2 3 4 5 6 7 8 9 10 11 |
//La siguiente es una llamada incorrecta. function &getHello() { return "Hello World"; } // Esta también va a indicar un warning function &test() { echo 'This is a test'; } |
¿Te gustó este artículo?
Si te gustó este artículo, te ha servido o aprendiste algo nuevo; compártelo en tus redes sociales o invítame un cafe.