En realidad el objeto es de la clase My_Producto
Código PHP:
class My_Producto
{
protected $_id = null;
protected $_nombre = null;
protected $_descripcion = null;
public function getId(){
return $this->_id;
}
public function getNombre(){
return $this->_nombre;
}
public function getDescripcion(){
return $this->_descripcion;
}
public function setId($id){
$this->_id = $id;
}
public function setNombre($nombre){
$this->_nombre = $nombre;
}
public function setDescripcion($descripcion){
$this->_descripcion = $descripcion;
}
}
?>
y en el mapper:
Código PHP:
public function find($id, My_Producto $producto) {
$result = $this->getDbTable()->find($id);
if (0 == count($result)) {
return;
}
$row = $result->current();
$producto->setId($row->id)
->setNombre($row->nombre)
->setDescripcion($row->descripcion);
}
El error:
Fatal error: Call to a member function setNombre() on a non-object in /home/tienda/www/web/application/models/mappers/ProductosMapper.php on line 68
Si lo hago de las siguiente manera funciona perfecto:
Código PHP:
public function find($id, My_Producto $producto) {
$result = $this->getDbTable()->find($id);
if (0 == count($result)) {
return;
}
$row = $result->current();
$producto->setId($row->id);
$producto->setNombre($row->nombre);
$producto->setDescripcion($row->descripcion);
}
Netbeans no me tira ningun error de codigo, quizás algo en la configuración de php?