8

codeigniterのようにフラッシュセッションデータを作成する方法はありますか?
コアPHPで作成したいと思います。

GETメソッドを使用したくないので、URLで変数を渡すとアプリケーションで問題が発生します。
だから、どうすればこれを行うことができますか?

4

1 に答える 1

17

PHP セッションでフラッシュ メッセージ クラスを作成するのは非常に簡単です。

class FlashMessage {

    public static function render() {
        if (!isset($_SESSION['messages'])) {
            return null;
        }
        $messages = $_SESSION['messages'];
        unset($_SESSION['messages']);
        return implode('<br/>', $messages);
    }

    public static function add($message) {
        if (!isset($_SESSION['messages'])) {
            $_SESSION['messages'] = array();
        }
        $_SESSION['messages'][] = $message;
    }

}

session_start()最初に電話していることを確認してください。次に、を使用してメッセージを追加できますFlashMessage::add('...');

その後、リダイレクトすると、次にページをレンダリングするときにメッセージをレンダリングできますecho FlashMessage::render()。これにより、メッセージもクリアされます。

http://php.net/manual/en/features.sessions.phpを参照してください。

于 2012-08-28T05:35:25.167 に答える