Traductor




Función include_once()

La sentencia include_once incluye y evalúa el fichero especificado durante la ejecución del script. Es un comportamiento similar al de la sentencia include, siendo la única diferencia que si el código del fichero ya ha sido incluido, no se volverá a incluir. Como su nombre lo indica, será incluido sólo una vez. 

include_once puede ser usado en casos donde el mismo fichero podría ser incluido y evaluado más de una vez durante una ejecución particular de un script, así que en este caso, puede ayudar a evitar problemas como la redefinición de funciones, reasignación de valores de variables, etc.
Veamos un ejemplo:
  • Supongamos el caso de un script externo que contiene la definición de una función y la invocación forma parte de un bucle
  • Con las funciones de include() o require(), quedaría mas o menos así en nuestro archivo externo:
<?php
    function calculaCuadrado ($numero) {
        $cuadrado=$numero*$numero;
        echo ("El cuadrado de $numero es $cuadrado.".salto);
    }
?>
Como ve, se trata de una función sencilla, ni siquiera devuelve resultado y solo recibe como argumento un número, lo eleva al cuadrado y lo muestra en la página.
Ahora vamos a crear un script que llame a esta función para calcular el cuadrado de los números del 1 al 10. El cual se muestra en el siguiente código:
<?php
    define ("salto","<br>\n");
    for ($contador=1; $contador<=10; $contador ++){
        include ("cuadradoExterno.php");
        calculaCuadrado ($contador);
    }
?>
Si corre este código se producirá un error fatal, esto es debido a que php no permite la definición repetida de una función. La solución a este problema puede ser de dos maneras
  • Colocar la sentencia include() antes del bucle.
  • O utilizar include_once() en su lugar.
<?php
    define ("salto","<br>\n");
    for ($contador=1; $contador<=10; $contador ++){
        include_once ("cuadradoExterno.php");
        calculaCuadrado ($contador);
    }
?>
Sin embargo, si su script externo declara variables que son usadas por el script principal, sólo se cargarán una vez. Si necesita recargaras, con los valores originales, mediante otra llamada con el script externo no podrá hacerlo, ya que estas instrucciones se ejecutan previa comprobación de no haber sido ejecutadas anteriormente en el mismo script.

También puedes ver:


Si te hemos ayudado : )

Te agradeceríamos que apoyaras este proyecto



No se te olvide Comentar y Compartir
en:
                          

0 comentarios:

Publicar un comentario