热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

干货!!!Yii11操作Cookie

:本篇文章主要介绍了干货!!!Yii11操作Cookie,对于PHP教程有兴趣的同学可以参考一下。
经常使用Yii 1.1,Yii操作COOKIE的写法,可以参考 http://www.yiiframework.com/wiki/152/COOKIE-management-in-yii/,本文所述,只是进行了封装,方便调用。

话不多说,上代码COOKIE.php,请放置在 /protected/components下方便调用。


// +----------------------------------------------------------------------
// | Create Date: 2015.12.31
// +----------------------------------------------------------------------
final class COOKIE {

    /**
     * 设置 COOKIE
     * @param string $name 名称
     * @param string $value 值
     * @param int $expire 时间,单位:秒
     * @param array $options 选项,具体请参考 CHttpCOOKIE
     * @return boolean
     */
    static public function set($name, $value = '', $expire = 0, $optiOns= []) {
        if (!is_string($name) || !is_int($expire) || !is_array($options)) {
            return false;
        }
        $COOKIE = new CHttpCOOKIE($name, $value);
        if ($expire) {
            $COOKIE->expire = time() + $expire;
        }
        if (!empty($options)) {
            foreach ($options as $optiOnIndex=> $optionVal) {
                $COOKIE->$optiOnIndex= $optionVal;
            }
        }
        Yii::app()->getRequest()->COOKIEs[$name] = $COOKIE;
        return true;
    }

    /**
     * 获取 COOKIE
     * @param string $name 名称
     * @return mixed
     */
    static public function get($name) {
        if (!(is_string($name) && $name)) {
            return false;
        }
        return isset(Yii::app()->getRequest()->COOKIEs[$name]) ? Yii::app()->getRequest()->COOKIEs[$name]->value : '';
    }

    /**
     * 清除全部 COOKIE
     * @return void
     */
    static public function clear() {
        Yii::app()->getRequest()->getCOOKIEs()->clear();
    }

    /**
     * 删除某个 COOKIE
     * @param string $name 名称
     * @return boolean
     */
    static public function remove($name) {
        if (!(is_string($name) && $name) || !isset(Yii::app()->getRequest()->COOKIEs[$name])) {
            return false;
        }
        self::set($name, '', -1);
        return true;
    }

}

调用方法:

设置COOKIE

COOKIE::set('name', 'lee', 60);
获取COOKIE

COOKIE::get('name');
删除某个COOKIE

COOKIE::remove('name');
清除全部COOKIE
COOKIE::clear();

声明:本文为原创,转载请在开头注明出处!!!

以上就介绍了干货!!!Yii 11操作COOKIE,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

推荐阅读
  • 采用IKE方式建立IPsec安全隧道
    一、【组网和实验环境】按如上的接口ip先作配置,再作ipsec的相关配置,配置文本见文章最后本文实验采用的交换机是H3C模拟器,下载地址如 ... [详细]
  • 本文详细介绍了在腾讯云服务器上配置 phpMyAdmin 的方法,包括安装、配置和解决常见问题。通过这些步骤,您可以轻松地在腾讯云环境中部署并使用 phpMyAdmin。 ... [详细]
  • 本文详细介绍了福昕软件公司开发的Foxit PDF SDK ActiveX控件(版本5.20),并提供了关于其在64位Windows 7系统和Visual Studio 2013环境下的使用方法。该控件文件名为FoxitPDFSDKActiveX520_Std_x64.ocx,适用于集成PDF功能到应用程序中。 ... [详细]
  • Appium + Java 自动化测试中处理页面空白区域点击问题
    在进行移动应用自动化测试时,有时会遇到某些页面没有返回按钮,只能通过点击空白区域返回的情况。本文将探讨如何在Appium + Java环境中有效解决此类问题,并提供详细的解决方案。 ... [详细]
  • 如何清除Chrome浏览器地址栏的特定历史记录
    在使用Chrome浏览器时,你可能会发现地址栏保存了大量浏览记录。有时你可能希望删除某些特定的历史记录而不影响其他数据。本文将详细介绍如何单独删除地址栏中的特定记录以及批量清除所有历史记录的方法。 ... [详细]
  • JavaScript 中创建对象的多种方法
    本文详细介绍了 JavaScript 中创建对象的几种常见方式,包括对象字面量、构造函数和 Object.create 方法,并提供了示例代码和属性描述符的解释。 ... [详细]
  • 本文详细介绍了如何在PHP中实现基于概率的随机抽奖功能。通过实例代码,解释了抽奖逻辑、奖品设置及结果统计的方法。适合PHP开发者参考学习。 ... [详细]
  • 本文对宋代词人朱雍的《迷神引》进行翻译和赏析,深入探讨其词作的艺术特色与情感表达。 ... [详细]
  • 本文详细介绍了优化DB2数据库性能的多种方法,涵盖统计信息更新、缓冲池调整、日志缓冲区配置、应用程序堆大小设置、排序堆参数调整、代理程序管理、锁机制优化、活动应用程序限制、页清除程序配置、I/O服务器数量设定以及编入组提交数调整等方面。通过这些技术手段,可以显著提升数据库的运行效率和响应速度。 ... [详细]
  • 利用Selenium与ChromeDriver实现豆瓣网页全屏截图
    本文介绍了一种使用Selenium和ChromeDriver结合Python代码,轻松实现对豆瓣网站进行完整页面截图的方法。该方法不仅简单易行,而且解决了新版Selenium不再支持PhantomJS的问题。 ... [详细]
  • 本文介绍如何使用PHP在WordPress中根据分类类别ID或名称获取所有相关文章,提供详细的方法和代码示例。 ... [详细]
  • 本题来自WC2014,题目编号为BZOJ3435、洛谷P3920和UOJ55。该问题描述了一棵不断生长的带权树及其节点上小精灵之间的友谊关系,要求实时计算每次新增节点后树上所有可能的朋友对数。 ... [详细]
  • 本文详细介绍了如何使用 PHP 接收并处理微信支付的回调结果,确保支付通知能够被正确接收和响应。 ... [详细]
  • 小编给大家分享一下如何移除URL中的index.php,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收 ... [详细]
  • 本文详细介绍了如何在PHP中删除数组中的指定元素、第一个元素和最后一个元素,并提供了具体的代码示例和相关函数的使用说明。 ... [详细]
author-avatar
时间证明一2602891163
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有