Foros del Web » Programando para Internet » PHP »

PHP OO pasar variable de una funcion a otra

Estas en el tema de pasar variable de una funcion a otra en el foro de PHP en Foros del Web. Hola tengo la siguiente duda supongamos que tengo una clase A y tengo dos funciones b y c y en la funcion b tengo una ...
  #1 (permalink)  
Antiguo 26/01/2012, 01:12
Avatar de xlos_mas_pro  
Fecha de Ingreso: mayo-2011
Ubicación: Santiago
Mensajes: 359
Antigüedad: 11 años, 8 meses
Puntos: 11
Pregunta pasar variable de una funcion a otra

Hola tengo la siguiente duda supongamos que tengo una clase A y tengo dos funciones b y c y en la funcion b tengo una variable con un valor y quiero que esa variable la pueda utilizar en la funcion c tengo algo haci:

Código PHP:
Ver original
  1. <?php
  2. class A
  3. {
  4.   function b()
  5.  {
  6.      $var = 'valor';
  7.  
  8.   }
  9.  function c()
  10. {
  11.   /* lo qe yo quiero es poder usar la variable $var en esta funcion*/
  12.  
  13. }
  14.  
  15. }
  16. ?>
  #2 (permalink)  
Antiguo 26/01/2012, 01:48
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 12 años, 4 meses
Puntos: 331
Respuesta: pasar variable de una funcion a otra

Utiliza $this->var para convertir la variable en una propiedad del objeto y así poder leeral mientras el objeto exista y la propiedad esté declarada. Saludos
__________________
Fere libenter homines, id quod volunt, credunt.
  #3 (permalink)  
Antiguo 26/01/2012, 02:34
Avatar de efedefernan  
Fecha de Ingreso: diciembre-2007
Ubicación: Cantabria
Mensajes: 91
Antigüedad: 15 años, 1 mes
Puntos: 11
Respuesta: pasar variable de una funcion a otra

Lo que te comenta repara2 es correcto siempre y cuando el metodo donde la vas a utilizar NO sea static public .
  #4 (permalink)  
Antiguo 26/01/2012, 03:11
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 18 años, 10 meses
Puntos: 406
Respuesta: pasar variable de una funcion a otra

Y que sea definida al comienzo de la clase, ya sea publica, privada o protegida...
__________________
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 =)
  #5 (permalink)  
Antiguo 26/01/2012, 10:44
Avatar de xlos_mas_pro  
Fecha de Ingreso: mayo-2011
Ubicación: Santiago
Mensajes: 359
Antigüedad: 11 años, 8 meses
Puntos: 11
Respuesta: pasar variable de una funcion a otra

no lo que pasa es que esa funcion es la querecibe los datos de un formuolario de inicio de session entonces solo puedo trebajar con esos datos en esa funcion no puedo poner la variable como global ya que no se tomarian los datos del formulario no se si me explico es que lo que pasa es qe estoy trabajando con codeigniter
  #6 (permalink)  
Antiguo 26/01/2012, 10:46
Avatar de xlos_mas_pro  
Fecha de Ingreso: mayo-2011
Ubicación: Santiago
Mensajes: 359
Antigüedad: 11 años, 8 meses
Puntos: 11
Respuesta: pasar variable de una funcion a otra

si me pudieran explicar como quedaria el codigo con el mismo ejemplo que les di se los agradeceria muchisimo
  #7 (permalink)  
Antiguo 26/01/2012, 10:50
Avatar de totobycrg  
Fecha de Ingreso: enero-2012
Ubicación: México D.F.
Mensajes: 27
Antigüedad: 11 años
Puntos: 5
Respuesta: pasar variable de una funcion a otra

pues puedes mandar a llamar la función desde la otra y pasarla como parámetro, u otra opción la puedes pasar con una session ;) xD

//al principio de tu PHP
session_start();

//asignación del valor desde la primera función
$_SESSION["valor1"] = $variable_1;

// acceso al valor desde la segunda función xD
$_SESSION["RECAFooter"]

si te sirve Karma++ *-*
  #8 (permalink)  
Antiguo 26/01/2012, 11:12
Avatar de xlos_mas_pro  
Fecha de Ingreso: mayo-2011
Ubicación: Santiago
Mensajes: 359
Antigüedad: 11 años, 8 meses
Puntos: 11
Respuesta: pasar variable de una funcion a otra

ok muchas gracias
  #9 (permalink)  
Antiguo 26/01/2012, 11:23
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 11 años, 6 meses
Puntos: 793
Respuesta: pasar variable de una funcion a otra

En este post se tocó ese tema, lee las respuestas de GatorV y carlos_belisario. Si buscas hay muchos más temas.

Pésima práctica lo que propone totobycrg.

http://www.forosdelweb.com/f68/cuand...tected-969248/

Saludos.
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #10 (permalink)  
Antiguo 26/01/2012, 11:42
Avatar de xlos_mas_pro  
Fecha de Ingreso: mayo-2011
Ubicación: Santiago
Mensajes: 359
Antigüedad: 11 años, 8 meses
Puntos: 11
Respuesta: pasar variable de una funcion a otra

miren mejor les mando el codigo para que me ayuden un poco esto lo hice en un controlador de codeigniter y lo que quiero es pasar la variable $usuario que se encuentra en la funcion validar_inicio la quiero pasar a la funcion bus_pass

Código PHP:
Ver original
  1. class login extends CI_Crontroller
  2. {
  3.     function iniciar_session()
  4.     {
  5.         $this->load->view('login/iniciar_session');
  6.     }
  7.    
  8.     function validar_inicio()
  9.     {
  10.         $this->form_validation->set_rules('usuario','Usuario','required|callback_bus_usu');
  11.         $this->form_validation->set_rules('password','Contraseña','required|md5|callback_bus_pass');
  12.        
  13.         $this->form_validation->set_message('required','El campo %s esta vacio');
  14.         $this->form_validation->set_message('bus_usu','El usuario no existe en la base de datos');
  15.         $this->form_validation->set_message('bus_pass','La contraseña ingresada es incorrecta');
  16.        
  17.         if($this->form_validation->run() == FALSE )
  18.         {
  19.             $this->load->view('login/iniciar_session');
  20.         }
  21.         else
  22.         {
  23.             $usuario = $this->input->post('usuario');
  24.             $password = $this->input->post('password');
  25.             $this->load->model('login_model','mss');
  26.             return $this->mss->rango($usuario);
  27.            
  28.         }
  29.    
  30.     }
  31.    
  32.    
  33.     function bus_usu($u)
  34.     {
  35.         $this->load->model('login_model','mss');
  36.         return $this->mss->buscar_usuario($u);
  37.    
  38.     }
  39.     function bus_pass($p)
  40.     {
  41.         $this->load->model('login_model','mss');
  42.         return $this->mss->buscar_pass($p);
  43.     }
  44. }

Etiquetas: function, functiones, php-oo
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 06:22.