Yii ver 1.1.8, PHP ver 5.3
Sto cercando di mettere in una grid un campo calcolato.
Il model si chiama FerieGiorni ed ha (oltre ad una chiave primaria e una foreign key ad un model "Dipendente") un campo da_data ed un campo a_data.
Dentro il model ho creato questa funzione:
public function getTotale_giorni()
{
$date1 = new DateTime($this->da_data);
$date2 = new DateTime($this->a_data);
$interval = $date2->diff($date1);
return $interval->d;
}
e funziona correttamente.
La mia grid l’ho settata così:
$this->widget('zii.widgets.grid.CGridView', array(
'id'=>'ferie_grid',
'dataProvider'=> $this->getFerieProvider(),
'summaryText'=>'',
'cssFile'=>'grid.css',
'columns'=>array(
array(
'name'=>'da_data',
'value'=>'$data->da_data_ita',
'header'=>'Da data',
),
array(
'name'=>'a_data',
'value'=>'$data->a_data_ita',
'header'=>'A data',
),
array(
'value'=>'$data->totale_giorni',
'header'=>'Giorni',
)
)
));
e due volte su tre il browser mi restituisce questo messaggio:
PHP Error range() [<a href=‘function.range’>function.range</a>]: step exceeds the specified range
mentre la terza volta mi visualizza tutto correttamente.
Non vi chiedo di risolvermi l’errore, dato che dovrei postarvi tutto lo stack, ma mettere un campo calcolato in una CGridView dovrebbe essere semplice.
Mi fate vedere come si fa?
Grazie a tutti
Roberto