TP6 with方法附加Session闪存数据(2)清空当前请求报错

浏览:388 发布日期:2019/04/26
5.0.0 - 普通 - 已处理
Argument 1 passed to think\Session::delete() must be of the type string, array given, called in E:\www2\vendor\topthink\framework\src\think\Session.php on line 468    /**
     * 删除session数据
     * @access public
     * @param  string $name session名称
     * @return void
     */
    public function delete(string $name): bool
    {
        empty($this->init) && $this->boot();

        $sessionId = $this->getId(false);

        if (!$sessionId) {
            return false;
        }
因为传递的类型是数组类型    /**
     * 清空当前请求的session数据
     * @access public
     * @return void
     */
    public function flush()
    {
        if (!$this->init) {
            return;
        }

        $item = $this->get('__flash__');

        if (!empty($item)) {
            $time = $item['__time__'];

            if ($this->request->time(true) > $time) {
                unset($item['__time__']);
                $this->delete($item);
                $this->set('__flash__', []);
            }
        }
    }
修改为下面这段可以完美解决$this->delete($item['0']);是否要这样使用呢?
评论(
后面还有条评论,点击查看>>