0

0

php cookie类(设置、获取、删除cookie值)

php中文网

php中文网

发布时间:2016-07-25 08:56:34

|

1373人浏览过

|

来源于php中文网

原创

本文介绍下,一个功能强大的php cookie操作类,可以完成设置cookie、获取cookie值、删除cookie值等操作,有需要的朋友参考下。

分享一个php cookie操作的类,可以设置cookie、获取cookie、删除cookie。

代码:

_name=$cname; 

if($cexpires){ 
  $this->_expires=$cexpires; 
} 
else{ 
  $this->_expires=time() + 60*60*24*30*12; // ~12 months 
} 

$this->_dir=$cdir; 
$this->_site=$csite; 
$this->_val=array(); 
$this->extract(); 
  } 

  function extract($cname="") 
  { 
if(!isset($_COOKIE)){ 
  global $_COOKIE; 
  $_COOKIE=$GLOBALS["HTTP_COOKIE_VARS"]; 
} 

if(empty($cname) && isset($this)){ 
  $cname=$this->_name; 
} 
 
if(!empty($_COOKIE[$cname])){ 

  if(get_magic_quotes_gpc()){ 
$_COOKIE[$cname]=stripslashes($_COOKIE[$cname]); 
  } 
  $arr=unserialize($_COOKIE[$cname]); 

  if($arr!==false && is_array($arr)){ 

foreach($arr as $var => $val){ 

  $_COOKIE[$var]=$val; 

  if(isset($GLOBALS["PHP_SELF"])){ 
  $GLOBALS[$var]=$val; 
  } 
} 
  } 

  if(isset($this)) $this->_val=$arr; 

} 
// 在全局范围内移除cookie 
unset($_COOKIE[$cname]); 
unset($GLOBALS[$cname]); 
} 

function put($var, $value) 
{ 
$_COOKIE[$var]=$value; 
$this->_val["$var"]=$value; 

if(isset($GLOBALS["PHP_SELF"])){ 
  $GLOBALS[$var]=$value; 
} 

if(empty($value)){ 
  unset($this->_val[$var]); 
} 

  } 

  function clear() 
  { 
$this->_val=array(); 
  } 

  function set() 
  { 
if(empty($this->_val)){ 
  $cookie_val=""; 
}  
else { 
  $cookie_val=serialize($this->_val); 
} 
 
if(strlen($cookie_val)>4*1024){ 
  trigger_error("The cookie $this->_name exceeds the specification for the maximum cookie size.  Some data may be lost", E_USER_WARNING); 
} 
setcookie("$this->_name", $cookie_val, $this->_expires, $this->_dir, $this->_site); 
  } 
} 
?>

调用示例: 1,设置cookie

put("namefirst","Jo");
$PHP_COOKIE->put("namelast","Foo");
$PHP_COOKIE->put("number","1234");
$PHP_COOKIE->put("time",time());
   // Set the cookie
$PHP_COOKIE->set();

$PHP_COOKIE=new PHP_COOKIE("test_cookie 123");
// Add the variables to be saved in the cookie
$PHP_COOKIE->put("namefirst","Jo123");
$PHP_COOKIE->put("namelast","Foo13");
$PHP_COOKIE->put("number","123413");
  // Set the cookie
$PHP_COOKIE->set();

echo "
The values saved in the cookie test_cookie are:"; echo "
namefirst: = $_COOKIE[namefirst]"; echo "
namelast: = $_COOKIE[namelast]"; echo "
number: = $_COOKIE[number]"; echo "
time: = $_COOKIE[time]"; echo "

END"; ?>

2,获取cookie

Play.ht
Play.ht

根据文本生成多种逼真的语音

下载
显示用于测试的一些cookie值" ;
echo "
Name: "; echo $_COOKIE['namefirst']; echo " "; echo $_COOKIE['namelast']; echo "
Number: "; echo $_COOKIE['number']; echo "
Time: "; echo $_COOKIE['time']; echo "

END"; ?>

3,删除cookie

set();

// Clear all values
#$PHP_COOKIE->clear();
?>


相关文章

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
苹果官网入口直接访问
苹果官网入口直接访问

苹果官网直接访问入口是https://www.apple.com/cn/,该页面具备0.8秒首屏渲染、HTTP/3与Brotli加速、WebP+AVIF双格式图片、免登录浏览全参数等特性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

115

2025.12.24

拼豆图纸在线生成器
拼豆图纸在线生成器

拼豆图纸生成器有PixelBeads在线版、BeadGen和“豆图快转”;推荐通过pixelbeads.online或搜索“beadgen free online”直达官网,避开需注册的诱导页面。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

82

2025.12.24

俄罗斯搜索引擎yandex官方入口地址(最新版)
俄罗斯搜索引擎yandex官方入口地址(最新版)

Yandex官方入口网址是https://yandex.com。用户可通过网页端直连或移动端浏览器直接访问,无需登录即可使用搜索、图片、新闻、地图等全部基础功能,并支持多语种检索与静态资源精准筛选。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

546

2025.12.24

JavaScript ES6新特性
JavaScript ES6新特性

ES6是JavaScript的根本性升级,引入let/const实现块级作用域、箭头函数解决this绑定问题、解构赋值与模板字符串简化数据处理、对象简写与模块化提升代码可读性与组织性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

150

2025.12.24

php框架基础知识汇总
php框架基础知识汇总

php框架是构建web应用程序的架构,提供工具和功能,以简化开发过程。选择合适的框架取决于项目需求和技能水平。实战案例展示了使用laravel构建博客的步骤,包括安装、创建模型、定义路由、编写控制器和呈现视图。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

20

2025.12.24

Word 字间距调整方法汇总
Word 字间距调整方法汇总

本专题整合了Word字间距调整方法,阅读下面的文章了解更详细操作。

47

2025.12.24

任务管理器教程
任务管理器教程

本专题整合了任务管理器相关教程,阅读下面的文章了解更多详细操作。

7

2025.12.24

AppleID格式
AppleID格式

本专题整合了AppleID相关内容,阅读专题下面的文章了解更多详细教程。

12

2025.12.24

csgo视频观看入口合集
csgo视频观看入口合集

本专题整合了csgo观看入口合集,阅读下面的文章了知道更多入口地址。

371

2025.12.24

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
第三期培训_PHP开发
第三期培训_PHP开发

共116课时 | 25.5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号