Si $data es un arreglo quizas esto te pueda servir...
Código PHP:
Ver original<?php
class Persona
{
private $_nombre;
private $_apellido;
public function setNombre($nombre)
{
$this->_nombre = $nombre;
}
public function setApellido($apellido)
{
$this->_apellido = $apellido;
}
public function setFunction($clave, $valor)
{
$funcion = 'set' . ucwords($clave); $this->$funcion($valor);
}
}
$data = array('nombre' => 'Juan', 'apellido' => 'Perez');
$usr = new Persona();
foreach($data as $clave => $valor) {
$usr->setFunction($clave, $valor);
}
echo '<pre>';
echo '</pre>';
Ten cuidado con la seguridad, pero por ahí podría andar...
Saludos