Foros del Web » Programando para Internet » PHP »

Poo clases php

Estas en el tema de Poo clases php en el foro de PHP en Foros del Web. BUENAS A TODOS tengo una duda o pregunta si tengo un archivo PHP con una clase persona, y dentro de ella tengo imprimir nombre e ...
  #1 (permalink)  
Antiguo 16/05/2015, 21:30
 
Fecha de Ingreso: marzo-2013
Mensajes: 42
Antigüedad: 11 años, 1 mes
Puntos: 0
Poo clases php

BUENAS A TODOS

tengo una duda o pregunta

si tengo un archivo PHP con una clase persona, y dentro de ella tengo imprimir nombre e imprimir apellido... y por otra parte tengo otra clase llamada CALCULAR EDAD , como hago para llamar a mi clase calcular edad??


class Persona
{
public function imprimirNombre()
{
echo "MI NOMBRE";
}
public function imprimirApellido()
{
echo "MI APELLIDO";
}
}
  #2 (permalink)  
Antiguo 16/05/2015, 22:46
 
Fecha de Ingreso: abril-2015
Mensajes: 3
Antigüedad: 9 años
Puntos: 0
Respuesta: Poo clases php

Incluye el archivo en donde este tu clase y instancia para llamar a la clase después llamas al método (función) que necesites.

$variable = new CALCULAR_EDAD(); //instancia a la clase.
$variable->metodo(); //metodo cualquiera
  #3 (permalink)  
Antiguo 18/05/2015, 07:39
 
Fecha de Ingreso: marzo-2013
Mensajes: 42
Antigüedad: 11 años, 1 mes
Puntos: 0
Respuesta: Poo clases php

ok ,pero tengo que instanciar en cada uno de mis metodos que tengo en mi clase persona?? por ejemplo

class Persona
{
public function imprimirNombre()
{
$calcular = new calcularEdad;
$calcular->calcularEdad1();
echo "MI NOMBRE";
}
public function imprimirApellido()
{
$calcular = new calcularEdad;
$calcular->calcularEdad1();

echo "MI APELLIDO";
}
}


solo quiero instanciar una sola vez mi clase para utilizarlo en todos mis metodos

Última edición por knt_277; 18/05/2015 a las 09:03
  #4 (permalink)  
Antiguo 18/05/2015, 10:15
Avatar de Uncontroled_Duck
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Málaga [Spain]
Mensajes: 806
Antigüedad: 12 años, 11 meses
Puntos: 261
Respuesta: Poo clases php

Buenas,

Puedes utilizar un constructor para poder acceder después desde cualquier parte de la clase.
Código PHP:
/**
 * Class calcularEdad
 */
class calcularEdad
{
    public function 
calcularEdad1()
    {
        
$edad '20';

        return 
$edad;
    }
}

/**
 * Class Persona
 */
class Persona
{
    protected 
$calcularEdad;

    public function 
__construct()
    {
        
$this->calcularEdad = new calcularEdad();
    }

    public function 
imprimirNombre()
    {
        
$nombre 'MI NOMBRE';

        return 
$nombre;
    }

    public function 
imprimirApellido()
    {
        
$apellido 'MI APELLIDO';

        return 
$apellido;
    }

    public function 
getEdad()
    {
        
$edad $this->calcularEdad;

        return 
$edad->calcularEdad1();
    }
}

$persona = new Persona();

echo 
'Nombre: ' $persona->imprimirNombre();
echo 
'Apellido: ' $persona->imprimirApellido();
echo 
'Edad: ' $persona->getEdad(); 
Esto te daría una salida similar a esto:
Código:
Nombre: MI NOMBRE
Apellido: MI APELLIDO
Edad: 20
Saludos,
__________________
Todos agradeceremos que pongas el código en su respectivo Highlight

Etiquetas: clases, poo
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 22:15.