Foros del Web » Programando para Internet » PHP »

Include tiene ámbito global?

Estas en el tema de Include tiene ámbito global? en el foro de PHP en Foros del Web. Me ha surgido una duda al intentar usar include, según la documentación es una variable de ámbito global por lo que sino me equivoco esto ...
  #1 (permalink)  
Antiguo 06/12/2012, 12:54
Avatar de AdrianSeg  
Fecha de Ingreso: enero-2010
Mensajes: 595
Antigüedad: 14 años, 9 meses
Puntos: 14
Include tiene ámbito global?

Me ha surgido una duda al intentar usar include, según la documentación es una variable de ámbito global por lo que sino me equivoco esto debería funcionar.

Código PHP:
Ver original
  1. include ('conexion.php');
  2.  
  3. function Hola () {
  4.  
  5. echo "llamadas a la DB";
  6. }
  7.  
  8. function Adios {
  9.  
  10. echo "llamadas a la DB";
  11. }

Pero no me funciona...tengo que hacer esto:

Código PHP:
Ver original
  1. function Hola () {
  2.  
  3. include ('conexion.php');
  4.  
  5. echo "llamadas a la DB";
  6. }
  7.  
  8. function Adios {
  9.  
  10. include ('conexion.php');
  11. echo "llamadas a la DB";
  12. }
  #2 (permalink)  
Antiguo 06/12/2012, 12:58
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.489
Antigüedad: 22 años, 3 meses
Puntos: 2114
Respuesta: Include tiene ámbito global?

Yo te diría que es más bien un problema del ámbito de las variables en si más que de include.
  #3 (permalink)  
Antiguo 06/12/2012, 13:40
Avatar de AdrianSeg  
Fecha de Ingreso: enero-2010
Mensajes: 595
Antigüedad: 14 años, 9 meses
Puntos: 14
Respuesta: Include tiene ámbito global?

Pues la verdad es que me has dejado igual, ya sabía lo de las variables globales, mi duda vino con el include, hay alguna manera de hacer lo que dije o tendría que invocarlo en cada función que lo requiera por separado?
  #4 (permalink)  
Antiguo 06/12/2012, 13:45
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Respuesta: Include tiene ámbito global?

¿Has leído bien la referencia que te pasó Bonez? Allí te indica cómo usar variables del ámbito global dentro de una función.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 06/12/2012, 13:46
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.489
Antigüedad: 22 años, 3 meses
Puntos: 2114
Respuesta: Include tiene ámbito global?

Supongo que en conexion.php tendrás alguna variable que quieras usar en la función, así que tendrías que declarar esa variable como variable global. Tal cual sale en el enlace.
  #6 (permalink)  
Antiguo 06/12/2012, 13:49
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: Include tiene ámbito global?

Es una mala practica lograr lo que intentas hacer. Te vas a encontrar con muchos problemas, que entre uno de ellos está lo que te está pasando. Lo mejor es declarar el include fuera y si tienes guardado los datos en una función llamar la función dentro de la otra función. Pero no es recomendable lo que quieres hacer.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos

Etiquetas: include, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:04.