« 16進表記文字列をバイナリデータに変換する | メイン | php4 から php5 への移行 »

ethna

Ethnaのセッション その2

セッションの動きを確認するサンプル
プロジェクト作成直後のテンプレート APPID/template/ja/index.tpl に
<textarea wrap=off cols=80 rows=16>{$session|var_dump}</textarea>
を追加。
プロジェクト作成直後のアクション APPID/app/action/Index.php に
class APPID_Action_Index extends APPID_ActionClass{
    function perform(){
        if( ! $this->session->isStart( true ) ){    ///    セッションが開始されていない
///         $this->session->start( 60 );    ///    非匿名
            $this->session->start( 60, true );    ///    匿名
            $this->backend->log( LOG_DEBUG, '▼セッション開始[%s]', session_id() );
            $this->session->set( 'start', strftime( '%Y-%m-%d %H:%M:%S' ) );
        }else{    ///    セッションが開始されている
            if( $this->session->isAnonymous() ){    ///    匿名セッション
                $this->backend->log( LOG_DEBUG, '★匿名→非匿名' );
                if( ! $this->session->regenerateId( 60, false ) ){
                    $this->backend->log( LOG_ERR, 'セッションID再生成失敗' );
                }
            }else{    ///    非匿名セッション
                $this->backend->log( LOG_DEBUG, '★非匿名→匿名' );
                if( ! $this->session->regenerateId( 60, true ) ){
                    $this->backend->log( LOG_ERR, 'セッションID再生成失敗' );
                }
            }
            $this->session->set( 'last', strftime( '%Y-%m-%d %H:%M:%S' ) );
        }
        $this->backend->log( LOG_DEBUG, '▲[%s]▲', session_id() );
        return 'index';
    }
これで最低限のセッションの変化を確認。
ethna2.3.7

トラックバック

このエントリーのトラックバックURL:
https://www.remix.asia/cgi/mt/mt-tb.cgi/6606

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)