11 Voto

PHP: exit en include() no debe abortar el script de llamada

Pregunta de Invitado | 19/03/2021 a las 21:00

He estructurado mi sitio web de manera que inserto el contenido de la página en mi index.php dependiendo de la URL. Estoy usando la función include() para esas inclusiones.

En algunos de estos archivos incluidos, también utilizo exit si solo quiero ejecutar el script insertado hasta cierto punto.

Ahora el problema es que después de invocar exit, mi página principal (index.php) también será abortada. Como resultado, por ejemplo, el pie de página ya no se muestra en las páginas correspondientes. ¿Qué puedo hacer?

ResponderPositivoNegativoFechaVotos
2Mejor Respuesta2 Votos

Simplemente use "regresar" en lugar de "salir".

De hecho, con exit, el script padre que llama también se detiene. Con return, solo el script que se incluye.
20/03/2021 a las 17:33

ResponderPositivo Negativo
00 Votos

return devuelve el control del programa al módulo de llamada. La ejecución continúa con la expresión que sigue a la llamada al módulo llamado.

Si se llama dentro de una función, return termina inmediatamente la ejecución de la función y pasa el parámetro como el valor de retorno de la función. return también termina la ejecución de código dentro de eval() o un archivo.

Si se llama en el espacio global, finaliza la ejecución del script. Si el script actual se incluye con include o require, solo finaliza la ejecución del archivo incluido y el valor que se pasa a devolver se convierte en el valor de retorno de la llamada a include / require. Si se llama a return en el script principal, todo el script finaliza. Si el script actual fue llamado por las directivas de configuración auto_prepend_file o auto_append_file, la ejecución de este script se detendrá.
21/03/2021 a las 19:55

ResponderPositivo Negativo
Responder

Temas Relacionados

PHP: Determinar el Número de Semana

Tutorial | 0 Comentarios

Cómo editar un Script Batch

Pregunta | 1 Respuesta

Aviso Importante

Por favor tenga en cuenta: Las contribuciones publicadas en askingbox.com son contribuciones de los usuarios y no deben reemplazar el asesoramiento profesional. No son verificados por independientes y no reflejan necesariamente la opinión de askingbox.com. Aprende más.

Participar

Haga su propia pregunta o escriba su propio artículo en askingbox.com. He aquí cómo.