1

私のアプリケーションでは、デフォルトのタイムゾーンが 1 つあります。また、すべてのユーザーには独自のタイムゾーンがあります。データベースに保存されているユーザーのタイムゾーンを設定したい。

Bootstrap ファイルでユーザーに応じてタイムゾーンを設定する方法。

前もって感謝します...

class Crm_Bootstrap extends Zend_Application_Module_Bootstrap {

    protected function _initTimezone()
    {

        $userObj = new Application_Model_DbTable_Users();
        require_once('Zend/Session.php');
        $session = new Zend_Session_Namespace('logincred');
        $userdetails = $userObj->userdetails($session->user);
        date_default_timezone_set($userdetails[0][id]);
    }
}
4

3 に答える 3

0

initTimezone()ブートストラップメソッドを作成し、データベースからユーザー/セッションのタイムゾーンを取得してタイムゾーンを設定します。ユーザーがログインしていない場合は、デフォルトのタイムゾーンを設定します。

于 2011-04-08T11:38:03.420 に答える
0

ユーザーのログイン方法とブートストラップでもこれを行う必要があります。そうしないと、ログインに成功した後の最初のページビューのタイムゾーンが正しくなくなります。

public function login($username, $password) {
    // .. login code ..
    // .. login successful ..
    date_default_timezone_set($user->timezone);
}
于 2011-04-08T11:46:36.457 に答える