corephp中类似代码点火器的flashdata


codeigniter like flashdata in core php

是否有任何方法可以创建flash会话数据,如在codeigniter中,
我想在corephp中创建它。

我不想使用GET方法,通过url传递变量会给我的应用程序带来问题
那么,我该怎么做呢?

使用PHP会话创建一个flash消息类非常容易。

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