Поскольку Auth-Component является расширением контроллера, нет «естественного» способа вставить это в вашу модель.
Вы можете сделать App::import('Controller', 'Users')
или где бы вы это ни делали.
Вы можете увидеть, как вы можете использовать эту функцию здесь: Using App :: import
Но я действительно думаю, что, поскольку это всего лишь вопрос отображения некоторой информации, помощник будет лучшим решением для вашей проблемы (для обслуживания "V" в MVC).
Вы можете написать помощника, который берет вашу дату (я думаю, вы используете DATE
или DATETIME
в вашей базе данных) и конвертирует ее в правильный часовой пояс.
function convert_timezone($time)
$timezone = $this->Session->read('Auth.timezone');
date_default_timezone_set($timezone); //set the correct timezone which we read from the Session
return gmdate("M d Y H:i:s", strtotime($time)); //using strtotime to convert the time from the database to a timestamp
}
Пожалуйста, ознакомьтесь с этими информационными ссылками о том, как написать свой собственный помощник, функцию gmdate и Session Helper из CakePHP.
Методы работы сессионного помощника
Написание собственных помощников
PHP-функция gmdate