Ver Mensaje Individual
  #11 (permalink)  
Antiguo 17/07/2009, 22:02
Avatar de Highlander
Highlander
 
Fecha de Ingreso: junio-2006
Ubicación: Concepción, Chile
Mensajes: 475
Antigüedad: 18 años, 9 meses
Puntos: 4
Respuesta: Return multiples valores

Cita:
Iniciado por Italico76 Ver Mensaje
Public function getNombre(){
return $this->nombre;
}

Public function geFuente(){
return $this->fuente;
}

... luego haces:

echo getNombre();
echo getFuente();

No debe haber variables publicas ya que si quieres acceder a un atributo lo haces a traves de los metodos (publicos) correspondientes. Asi ocultas la implementacion y la proteges.

Lee sobre encapsulamiento y data hidding
Gracias eso me funciono a la primera pero lo que no agrada es que tengo que hacer una metodo para darle salida a cada dato individualmente.

Implemente esto con el codigo que posteo GatorV:

Código PHP:
<?php

class Ingrediente {

    private 
$_datos = array();
    
    public function 
__construct ($nombre$fuente$energia$proteina$grasa_total$colesterol$hidratos_carbono$sodio) {
        
$this->_datos['nombre'] = $nombre;
        
$this->_datos['fuente'] = $fuente;
        
$this->_datos['energia'] = $energia;
        
$this->_datos['proteina'] = $proteina;
        
$this->_datos['grasa_total'] = $grasa_total;
        
$this->_datos['colesterol'] = $colesterol;
        
$this->_datos['hidratos_carbono'] = $hidratos_carbono;
        
$this->_datos['sodio'] = $sodio
        
    }
    
    public function 
__get($dato) {
        return 
$this->_datos[$dato];
    }
}


$ingrediente = new Ingrediente('Azucar''USDA''1''2''3' ,'4''5''6');

echo 
$ingrediente->sodio
?>
No logro encontrar algo que explique el guion abajo en private $_datos = array();
solo que es una forma valida de declarar una variable pero si le saco el guion bajo no funciona.

Gracias y saludos.
__________________
Ingeniero (E) en Computación e Informática
The last man alone with god.