Discuz! X cookie的设置与使用详解

最近在做Discuz!系列的插件,需要用到cookie,我在编写插件的时候如果不加入session_start函数cookie就无法使用。

操作方法

  • 01

    Discuz!X cookie生成文件位置   source\function\function_core.php

  • 02

    Discuz!X cookie封装源码   生成COOKIE <?php function dsetcookie($var, $value = '', $life = 0, $prefix = 1, $httponly = false) { global $_G; $config = $_G['config']['cookie']; $_G['cookie'][$var] = $value; $var = ($prefix ? $config['cookiepre'] : '').$var; $_COOKIE[$var] = $value; if($value == '' || $life < 0) { $value = ''; $life = -1; } if(defined('IN_MOBILE')) { $httponly = false; } $life = $life > 0 ? getglobal('timestamp') + $life : ($life < 0 ? getglobal('timestamp') - 31536000 : 0); $path = $httponly && PHP_VERSION < '5.2.0' ? $config['cookiepath'].'; HttpOnly' : $config['cookiepath']; $secure = $_SERVER['SERVER_PORT'] == 443 ? 1 : 0; if(PHP_VERSION < '5.2.0') { setcookie($var, $value, $life, $path, $config['cookiedomain'], $secure); } else { setcookie($var, $value, $life, $path, $config['cookiedomain'], $secure, $httponly); } }

  • 03

    Discuz!X cookie封装源码   读取COOKIE <?php function getcookie($key)    {     global $_G;     return isset($_G['cookie'][$key]) ? $_G['cookie'][$key] : '';    }

  • 04

    Discuz!X cookie封装源码  设置cookie: <?php dsetcookie('cookie名', 'cookie值', '有效时间');

  • 05

    Discuz!X cookie封装源码    dsetcookie()方法分析 function dsetcookie($var, $value = '', $life = 0, $prefix = 1, $httponly = false) dsetcookie()还有两个参数 $prefix与 $httponly $prefix为是否添加cookie前缀,true则自动添加网站的前缀,false则不添加 $httponly表示是否只允许http方式访问,这两个值只要默认值即可,有需要可另外设置,不过当用户访问的是手机版则$httponly会被自动设置为false, 见function_core.php第272行    if(defined('IN_MOBILE')) {     $httponly = false;    }

  • 06

    Discuz!X cookie封装源码    在程序中读取cookie第一种使用getcookie函数: getcookie('cookie名');第二种直接访问全局变量$_G: $_G['cookie']['cookie名']

(0)

相关推荐

  • 手机版傲游云浏览器设置主页方法详解

    傲游云浏览器设置主页方法详解。每当打开浏览器时,你的第一个页面是什么?是导航还是浏览器默认页面。你是否对某个网站情有独钟。喜欢高效的你,可以尝试把自己最喜欢,最常去的网站设置成主页,即方便又省时。下面 ...

  • 绝地求生大逃杀画面全选项设置效果图文详解

    画面设置不管是哪个配置段的玩家都无法绕开的一个关键问题,虽然网上有很多其他玩家分享的设置,但往往会由于机器的不同而出现不适配的情况.所以今天小编为大家带来的便是玩家"是阿文啊丶"测 ...

  • 微话一键拨号功能设置方法图文详解

    《微话》是一款功能强大的智能拨号软件(点击下载),本文小编主要给大家讲解一下微话一键拨号设置方法详解,不懂的朋友可以一起来了解下吧! 1)首先,进入【更多】界面,然后点击【通用设置】,在【通用设置】界 ...

  • 乌鸦手机推送通知功能设置方法图文详解

    《乌鸦》是一款社交类软件,在乌鸦这款软件中你可以感受到最真实的社交生活,有事没事可以黑一下你的同学、同事或朋友,你能知道他们是你的同学、同事或朋友,但你却不知道他们是谁。无名字,无身份,无压力,你会发 ...

  • 安卓手机怎么连接电脑上网,如何设置图文教程详解

    这种情况可以解决你的哪些困境? 手机玩游戏需要一个额外的大数据数据包 手机在没WIFI的地方,不敢轻易下手,网上又没有提供数据包下载 或者你只是一个单纯的手机控,你只想摆弄手机 现在只需要USB,你的 ...

  • ubuntu13.04设置root权限详解

    很多朋友安装升级Ubuntu 13.04之后不知道ubuntu 13.04 root权限设置的具体方法,今天这篇文章就将为大家详细介绍设置root权限的步骤,新手朋友可以来看一看哦~ Ubunto 1 ...

  • 天猫魔盘变身USB无线网卡设置图文教程详解

    天猫魔盘是一款随身Wifi产品,其主要作用是将电脑网络变身为Wifi无线网络,供周边智能手机等无线设备免费上网。其实天猫魔盘还可以变身成为USB无线网卡,让台式机也可以使用无线网络,因此我们基本可以说 ...

  • eclipse.ini内存设置 设置jvm参数详解

    复制代码 代码如下: -vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M 这里有几个问题: 1. 各个参数的含义什么? 2. ...

  • 开机宽带自动连接的设置方法(图文详解)

    宽带自动连接设置、自动宽带连接、自动连接宽带; 宽带自动连接设置详细步骤: 如果您还不知道如何创建宽带连接,请点击本文的相关文件“如何创建宽带连接”; 第一步:首先双击打开“宽带连接”——>输入 ...