Foros del Web » Programando para Internet » PHP »

Variables en función

Estas en el tema de Variables en función en el foro de PHP en Foros del Web. Buenas, estoy intentando optimizar el script de www.tuentimp3.com Hay una función config() de php que saca el valor de la configuración de la db. La ...
  #1 (permalink)  
Antiguo 19/11/2011, 06:26
 
Fecha de Ingreso: noviembre-2010
Mensajes: 1.242
Antigüedad: 13 años, 5 meses
Puntos: 73
Variables en función

Buenas, estoy intentando optimizar el script de www.tuentimp3.com

Hay una función config() de php que saca el valor de la configuración de la db. La db solo tiene 35 campos, por lo que es fácil meterla en un array. Debe ser bd para el panel de administración.

Lo que me falla es que creo el array en linea 1, cuando en linea 3 en la función config() hago $config['valor'] me da error de que no existe, pero si le hago un echo sin función ni nada si funciona, el array se genera bien. ¿Cómo puedo usar una variable declarada fuera de la función dentro de la función?

Saludos!
__________________
:)
  #2 (permalink)  
Antiguo 19/11/2011, 06:50
Avatar de Antonio_España  
Fecha de Ingreso: mayo-2007
Mensajes: 58
Antigüedad: 16 años, 10 meses
Puntos: 4
Respuesta: Variables en función

Una variable declarada en una funcion no se puede usar en otra funcion, a menos que esta variable pertenezca a la clase, es decir, que fuese creada justo despues de class:
Código PHP:
Ver original
  1. <?php
  2. <?
  3. class Clase
  4. {
  5.     // Propiedad de la clase, accesible por cualquier metodo
  6.     public $var = 'valor';
  7.  
  8.     // Un metodo
  9.     public function showVar() {
  10.       $no_tengo_vida_fuera_de_aqui = "";
  11.       echo $this->var;
  12.     }
  13.  
  14.     public function error()
  15.     {
  16.         // Esta invocacion generara error
  17.         echo $this->no_tengo_vida_fuera_de_aqui;
  18.     }
  19. }
  20.  
  21. $c = new Clase();
  22. $c->error();
  23. ?>

Este apartado te resultara muy util:
http://www.php.net/manual/es/languag...visibility.php

Saludos :)
__________________
Aprendiz autodidacta

Última edición por Antonio_España; 19/11/2011 a las 06:58
  #3 (permalink)  
Antiguo 19/11/2011, 07:11
 
Fecha de Ingreso: noviembre-2010
Mensajes: 1.242
Antigüedad: 13 años, 5 meses
Puntos: 73
Respuesta: Variables en función

la variable no se declara en una función, si no independientemente, por ej esto es lo que busco:

$hola = "hola";

function dihola(){
return $hola;
}

echo dihola();

y ese escript de como resultado "Hola"
__________________
:)
  #4 (permalink)  
Antiguo 19/11/2011, 09:21
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: Variables en función

Por supuesto que se puede usar una variable declarada fuera de una función, que no se recomiende es otra cosa, ya que perdería todo sentido de "encapsulación" de las funciones...

Código PHP:
Ver original
  1. <?php
  2. $variale = "hola mundo!!!";
  3.  
  4. //La forma en que no debe hacerse
  5. function diHola() {
  6.      global $variable;
  7.      echo $variable;
  8. }
  9.  
  10. //La forma correcta de pasar una variable
  11.  
  12. function diAlgo($msn) {
  13.      echo $msn;
  14. }
  15.  
  16. diHola();
  17. diAlgo($variable);
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)

Última edición por Nemutagk; 19/11/2011 a las 09:28

Etiquetas: 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 16:47.