Ho configurato un campo data appuntamento_data come datetime
campo in mysql db.yii2: formattazione della data per la visualizzazione
nel mio modello regole Appointment.php sono impostati in questo modo:
public function rules()
{
return [
[['appointment_date','weekdays'], 'safe'],
[['appointment_date'], 'date','format' => 'd-M-yyyy H:m'],
e in web.php nell'ambito della componente Ho impostato
'formatter' => [
'defaultTimeZone' => 'UTC',
'timeZone' => 'Asia/Kolkata',
e, a mio avviso Sto cercando di formattare il data per la visualizzazione in questo modo:
[
Yii::$app->formatter->asDatetime('appointment_date')
],
Ora sto ottenendo l'errore -
appointment_date' is not a valid date time value: DateTime::__construct(): Failed to parse time string (appointment_date) at position 0 (a): The timezone could not be found in the database
Array
(
[warning_count] => 1
[warnings] => Array
(
[6] => Double timezone specification
)
[error_count] => 3
[errors] => Array
(
[0] => The timezone could not be found in the database
[11] => Unexpected character
[12] => Double timezone specification
)
considerando che la data memorizzata nel database è come: 2015-01-20 11:50:00
Se non mi formattazione della data e semplicemente mantenendo l'attributo in vista, come appointment_date
quindi la data è indicato come 2015-01-20 11:50:00
voglio mostrare la data come 20-01-2015 11:50:00
Se sto usando il codice come questo:
[
'attribute'=>'appointment_date',
'format'=>['DateTime','php:d-m-Y H:i:s']
],
Sto ottenendo la data formattata correttamente.
io voglio sapere cosa sto facendo male qui nel usando
Yii::$app->formatter->asDatetime('appointment_date')
Grazie
@ fl0r- anche il tuo suggerimento è corretto, ma ho bisogno di usare un codice lungo come 'attributo =>' appuntamento_data', 'valore' => Yii :: $ app-> formattatore-> asDatetime ($ modello-> appuntamento_data) – Pawan