$value) { if(! property_exists($obj, $key)){ continue; } if($isMagicSetExist){ $obj->$key = $value; }else{ $method = "set" . ucfirst($key); if(! method_exists($obj, $method)){ $method = "set"; $fArr = explode("_", $key); foreach($fArr as $idx => $fName){ $method .= ucfirst($fName); } } $obj->$method($value); } } } }