Saltar al contenido

PHP: ¿Cuál es la diferencia entre exit (), die () y return? dentro de “self” y archivos incluidos?

Verificamos completamente cada tutorial de nuestra página web con el objetivo de enseñarte siempre la información más veraz y actualizada.

Solución:

Retorno devuelve un valor. Puede ser cualquier cosa y está destinado a funciones.

¿Cuáles son las diferencias en die () y exit () en PHP?

http://php.net/manual/en/function.return.php

El retorno es devuelve un valor (char, int,string,array…) y salir de la función.

Desde el manual de php:

Nota: Esta construcción de lenguaje es equivalente a die ().

Pero todavía hay diferencias entre morir y Salida :

Usando die () puedes publicar un string : die (“Ocurrió un error”);

El mismo resultado con el uso de exit ()

");
    exit(0);
?>

O si es cli o unix shell:

Usando PHP en la línea de comando, die (“Ocurrió un error”) simplemente imprime “Ocurrió un error” en STDOUT y termina el programa con un código de salida normal de 0.


die y exit (funciones equivalentes)

Termina la ejecución del script.

return

Devuelve el control del programa al módulo de llamada. La ejecución se reanuda en la declaración que sigue a la invocación del módulo llamado.

Si se llama desde dentro de una función, la instrucción return finaliza inmediatamente la ejecución de la función actual y devuelve su argumento como el valor de la llamada a la función. return también finaliza la ejecución de una instrucción eval () o un archivo de script.

Si se llama desde el ámbito global, la ejecución del archivo de secuencia de comandos actual finaliza. Si el archivo de secuencia de comandos actual se incluyó o se requirió, el control se devuelve al archivo de llamada. Además, si se incluyó el archivo de secuencia de comandos actual, el valor dado para devolver se devolverá como el valor de la llamada de inclusión. Si se llama a return desde el archivo de secuencia de comandos principal, la ejecución de la secuencia de comandos finaliza. Si el archivo de secuencia de comandos actual fue nombrado por las opciones de configuración auto_prepend_file o auto_append_file en php.ini, entonces la ejecución de ese archivo de secuencia de comandos finaliza.


die vs exit

La diferencia entre die() y exit() en PHP es su origen.

  • exit() es desde exit() en C.
  • die() es desde die en Perl.

Manual de PHP

Manual de PHP para die:

Esta construcción de lenguaje es equivalente a exit().

Manual de PHP para exit:

Nota: esta construcción de lenguaje es equivalente a die().

Manual PHP para lista de alias de funciones:

die es un alias para la función maestra exit()


DIFERENTE EN OTROS IDIOMAS

die() y exit() son diferente en otros idiomas pero en PHP son idénticos.

De otra diatriba de PHP:

… Como codificador de C y Perl, estaba listo para responder, “Por qué, exit () simplemente cancela el programa con un estado de salida numérico, mientras que die () imprime el mensaje de error en stderr y sale con el estado EXIT_FAILURE. ” Pero luego recordé que estamos en la tierra de la sintaxis desordenada de PHP.

En PHP, exit () y die () son idénticos.

Los diseñadores obviamente pensaron “Hmm, tomemos prestada exit () de C. Y a la gente de Perl probablemente le gustará si tomamos die () como es de Perl también. ¡Vaya! ¡Ahora tenemos dos funciones de salida! puede tomar un string o entero como argumento y hazlos idénticos! “

El resultado final es que esto realmente no hizo las cosas “más fáciles”, sino más confusas. Los codificadores de C y Perl continuarán usando exit () para lanzar un valor de salida entero solamente, y die () para lanzar un mensaje de error y salir con una falla. Los novatos y las personas que utilizan PHP como primer idioma probablemente se preguntarán “umm, dos funciones de salida, ¿cuál debería usar?” El manual no explica por qué hay exit () y die ().

En general, PHP tiene mucha redundancia extraña como esta: intenta ser amigable con personas que provienen de diferentes idiomas, pero al hacerlo, crea una redundancia confusa.

Si para ti ha sido de ayuda este artículo, agradeceríamos que lo compartas con el resto entusiastas de la programación y nos ayudes a difundir nuestro contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *