I have to install this application in many place’s intranet, so creating a table to store this variables was a waste, also, I need to access easily this variables anywhere in the app.
So i created this model that stores its data in the config file instead of the database, take a look, enjoy, gimme advice… stuff
<?php
/**
- This is the model class for "something".
 
*/
class Config extends CFormModel
{
//En vez de usar activeRecord se puede usar CFormModel, Yii lo tiene para crear modelos que generan formularios
//pero que no se relaciona con una tabla
function  __construct($scenario=''){
  //aca traigo los datos anteriores del archivo donde los guarde
    parent::__construct($scenario);
    $c = include(  Yii::app()->basePath .DIRECTORY_SEPARATOR . 'config' .DIRECTORY_SEPARATOR. 'local.php'  );        
    $this->setAttributes( $c['params'], false);
    //utilizo la llave params porque este arreglo está junto al arreglo de config de yii, así puedo acceder a las 
    //variables en toda la aplicación, pero es caprico
    //hay que usar false, no estoy 100% seguro de porque
}
public $razon_social;
public $nit;
public $pais;
public $departamento;
public $ciudad;
public $direccion;
public $telefono;
public $email;
public $corredor_gtm;
//las propiedades y atributos hay que declararlas manual para poder acceder a ellas
/**
 * @return array validation rules for model attributes.
 */
public function rules()
{
    // NOTE: you should only define rules for those attributes that
    // will receive user inputs.
    return array(
        array('status', 'numerical', 'integerOnly'=>true),
        //igual que en cualqueir modelo
    );
}
/**
 * @return array customized attribute labels (name=>label)
 */
public function attributeLabels()
{
    return array (
        'razon_social'  =>  'Razon Social',
        'nit' => 'Nit o Rut',
        'pais' => 'Páis',
        'departamento' => 'Departamento',
        'ciudad' => 'Ciudad',
        //igual que en cualqueir modelo
    );
}
public function save(){
  // esta es la parte pro, hay que sobreescribir la función save para que guarde en un archivo en 
  //vez de guardar en la tabla.
  // en mi caso lo que hice fue usar var_export para guardar el php de la declaracion del arreglo
  //meterlo en el archivo, le pongo antes que return y asi lo puedo leer despues usando include($archivo) 
  //y cargarlo en una variable
    $l = Yii::app()->basePath .DIRECTORY_SEPARATOR . 'config' .DIRECTORY_SEPARATOR. 'local.php' ;
    $c = var_export($this->attributes, true);
    $f = fopen($l,'w');
    if($f === false){
        fclose($f);
        return false;
    }
    $c = "<?php
return array(
'params'=> ".$c. ",
);
";
    if( fwrite($f,$c) === false) {
        fclose($f);
        return false;
    }
    fclose($f);
    return true;
}
}