php setcookie介绍与实例应用
cookie 的名称指定为相同名称的变量。例如,如果被发送的 cookie 名为 "name",会自动创建名为 $user 的变量,包含 cookie 的值。
必须在任何其他输出发送前对 cookie 进行赋值。
如果成功,则该函数返回 true,否则返回 false。
语法
setcookie(name,value,expire,path,domain,secure)
*/
$cookieinfo=session_get_cookie_params(); //获取cookie信息
if((empty($cookieinfo['domain']))&&(empty($cookieinfo['secure']))) //检查结果是否为空
{
setcookie(session_name(),'',time()-3600,$cookieinfo['path']); //设置cookie
}
elseif(empty($cookieinfo['secure'])) //检查选项是否为空
{
setcookie(session_name(),'',time()-3600,$cookieinfo['path'],$cookieinfo['domain']); //设置cookie
}
else
{
setcookie(session_name(),'',time()-3600,$cookieinfo['path'],$cookieinfo['domain'],$cookieinfo['secure']); //设置cookie
}
//session_destroy(); //注销session
print_r($_session);
print_r($_cookie);
//利用session_set_cookie_params可以设置生存期及路径
session_set_cookie_params(0,'/yourpath/'); //设置cookie的生存期及路径
/*
注释:可以通过 $http_cookie_vars["user"] 或 $_cookie["user"] 来访问名为 "user" 的 cookie 的值。
注释:在发送 cookie 时,cookie 的值会自动进行 url 编码。接收时会进行 url 解码。如果你不需要这样,可以使用 setrawcookie() 代替。
*/
语法
header(string,replace,http_response_code)参数 描述
string 必需。规定要发送的报头字符串。
replace 可选。指示该报头是否替换之前的报头,或添加第二个报头。
默认是 true(替换)。false(允许相同类型的多个报头)。
http_response_code 可选。把 http 响应代码强制为指定的值。(php 4 以及更高版本可用)
header() 函数向客户端发送原始的 http 报头。
认识到一点很重要,即必须在任何实际的输出被发送之前调用 header() 函数(在 php 4 以及更高的版本中,您可以使用输出缓存来解决此问题):
*/
header("x-sample-test:foo"); //发送http标头
header('content-type:text/plain'); //发送http标头
var_dump(headers_list()); //返回已发送的标头列表
if(!headers_sent()) //如果标头没有发送
{
header('location:http://www.example.com/'); //发送标头
exit; //结束php代码
}
if(!headers_sent($filename,$linenum)) //如果没有输出指定文件
{
header('location:http://www.example.com/'); //发送标头
exit; //结束php代码
}
else //如果已经输出到指定文件
{
echo "headers already sent in $filename on line $linenumn".
"cannot redirect,for now please click this <a".
"href="http://www.example.com">link</a>insteadn"; //输出提示信息
exit; //结束php代码
}
/*
注释:从 php 4.4 之后,该函数防止一次发送多个报头。这是对头部注入攻击的保护措施。
*/
session_start(), session_register(),session_unregister(),
session_is_registered(),session_destroy函数.
session_start():启用session机制,在需要用到session的程序文件的最开始调用它.
session_register():注册session变量
session_unregister(): 删除session变量(一个一个删除)
session_is_registered(): 判断session变量是否注册
session_distroy(): 销毁所有session变量(所有session变量销毁)
初始化session
实例1
*/
session_start();
//删除所有的session变量值
$_session=array();
if(isset($_cookie[session_name()]))
{
setcookie(session_name(),'',time()-42000,'/');
}
//注销所有的session
session_destroy();
/*
实例2
*/
session_start(); //初始化session
$a=5; //定义变量
session_register('a'); //注册session
session_decode("<session that doesn't have a as a session variable>"); //解密字符串
print (session_is_registered('a')?$_session[a]:'not registered' ); //判断变量是否注册
/*
实例3
*/
/*初始化session*/
session_start();
$_session['login_ok']=true; //定义session值
$_session['nome']='sica'; //定义session值
$_session['inteiro']=34; //定义session值
$result=session_encode(); //对session值加密
echo $result; //输出结果
session_destroy(); //注销所有session值
/*
实例4
*/
session_start(); //初始化session
$_session['name']="yoursession"; //注册一个session变量
if(!isset($_session['initiated'])) //如果某个值没有被设定
{
session_regenerate_id(); //获取当前的session id
$_session['initiated']=true; //设定值为真
}
session_destroy(); //注销session
//实例5
session_start(); //初始化session
$_session['name']="yoursession"; //注册一个session变量
if(session_is_registered(name)) //进行判断
{
echo "指定的变量已经被注册为session<br>"; //输出内容
}
else
{
echo "指定的变量没有被注册为session<br>"; //输出相应结果
}
session_destroy(); //注销session
?>
function dir_writeable($dir) //自定义函数扩展功能,建立可写的目录
{
if(!is_dir($dir)) //如果给定的参数不是目录
{
@mkdir($dir,0777); //创建目录
echo "目录".$dir."建立成功!";
}
}
dir_writeable("test"); //调用自定义函数,建立test目录
/*
执行本代码将会在当前目录建立名为:test的目录,同时将输出:
目录test建立成功
*/
$dir="test"; //定义目录
if(rmdir($dir)) //如果成功删除目录
{
echo "目录".$dir."被成功删除!"; //输出内容
}
else
{
echo "删除目录".$dir."时,出现错误!";
}
//
$path="test.txt"; //定义路径
echo $path; //输出处理前的
$realpath=realpath($path); //将指定绝对路径规范化输出
echo "<br>";
echo $realpath //输出处理后的结果
//看一完整理实例
function dir_writeable($dir) //建立自定义函数扩展功能
{
if(!is_dir($dir)) //如果给定参数不是目录
{
@mkdir($dir,0777); //创建目录
}
if(is_dir($dir))
{
if($fp=@fopen("$dir/test.txt",'w')) //以写方式打开指定路径下的文件,如果不存在就创建
{
@fclose($fp); //关闭文件句柄
@unlink("$dir/test.txt"); //删除文件
$writeable=1; //定义返回值为真
}
else
{
$writeable=0; //定义返回值为假
}
}
return $writeable; //返回值
} //自定义函数结束
ord() 函数返回字符串第一个字符的 ascii 值。
语法
ord(string)
*/
$str="h"; //定义字符
$result=ord($str); //求其ascii码
echo "字符".$str."的ascii码为:".$result; //输出的结果,72
相关文章
- PHPEMS(PHP Exam Management System)在线模拟考试系统基于PHP+Mysql开发,主要用于搭建模拟考试平台,支持多种题型和展现方式,是国内首款支持题冒题和自动评分与教师评分相...2016-11-25
- 本文实例讲述了JS使用cookie实现DIV提示框只显示一次的方法。分享给大家供大家参考,具体如下:这里运用JavaScript的cookie技术,控制网页上的提示DIV只显示一次,也就是当用户是第一次打开网页的时候才显示,第二次自动隐藏起...2015-11-08
- 什么是SSO?单点登录SSO(Single Sign-On)是身份管理中的一部分。SSO的一种较为通俗的定义是:SSO是指访问同一服务器不同应用中的受保护资源的同一用户,只需要登录一次,即通过一个应用中的安全验证后,再访问其他应用中的受保护...2015-11-08
- Promise是异步编程的一种解决方案,在ES6中Promise被列为了正式规范,统一了用法,原生提供了Promise对象。接下来通过本文给大家介绍Promise的介绍及基本用法,感兴趣的朋友一起看看吧...2021-10-21
- 什么是SSO?单点登录SSO(Single Sign-On)是身份管理中的一部分。SSO的一种较为通俗的定义是:SSO是指访问同一服务器不同应用中的受保护资源的同一用户,只需要登录一次,即通过一个应用中的安全验证后,再访问其他应用中的受保护...2015-11-08
- 这篇文章主要介绍了vue项目中js-cookie的使用存储token操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-11-14
- 什么是cookie? cookie 是存储于访问者的计算机中的变量。每当同一台计算机通过浏览器请求某个页面时,就会发送这个 cookie。你可以使用 JavaScript 来创建和取回 cookie 的值。 有关cookie的例子: 名字 cookie 当访...2014-05-31
- 这篇文章主要介绍了JS跨浏览器解析XML应用过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-10-16
python爬虫用request库处理cookie的实例讲解
在本篇内容里小编给大家整理的是一篇关于python爬虫用request库处理cookie的实例讲解内容,有需要的朋友们可以学习参考下。...2021-02-21PHP中print_r、var_export、var_dump用法介绍
文章详细的介绍了关于PHP中print_r、var_export、var_dump区别比较以及这几个在php不同的应用中的用法,有需要的朋友可以参考一下 可以看出print_r跟var_export都...2016-11-25Framewrok7 视图介绍(views、view)使用介绍
下面我们来看一篇关于Framewrok7 视图介绍(views、view)使用介绍吧,希望这篇文章能够帮助到各位朋友。 一、Views 与View的介绍 1,Views (<div class="views">) (1)Vi...2016-10-02vivo X9如何查出后台偷跑流量应用?vivo X9查出后台偷跑流量应用的方法
vivo X9如何查看后台流量偷跑的情况?小编教你轻松查到!还不了解的小伙伴快来看看吧! 1)打开手机自带的【i管家】应用,打开后点击【流量监控】选项。(如下图) 2)接着选...2016-12-31- 本篇文章介绍了,基于C#后台调用跨域MVC服务及带Cookie验证的实现。需要的朋友参考下...2020-06-25
- Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。本文我们来讲解Redis的应用场景实例。 C...2016-11-25
- PHP日志类库在低版本中我们都没有看到了但在高版本的php中就有了,下面我们来看一篇关于PHP日志类库使用详解介绍吧. Monolog遵循PSR3的接口规范,可以很轻易的替换...2016-11-25
- 这篇文章主要介绍了chrome监听cookie变化与赋值问题,cookie监听与赋值操作需要manifest文件里声明权限问题,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-10-22
PHP explode()函数的几个应用和implode()函数有什么区别
explode()函数介绍explode() 函数可以把字符串分割为数组。语法:explode(separator,string,limit)。 参数 描述 separator 必需。规定在哪里分割字符串。 string...2015-11-08- Libevent 是一个用C语言编写的、轻量级的开源高性能网络库,主要有以下几个亮点:事件驱动( event-driven),高性能;轻量级,专注于网络,下文我们就一起来看PHP Libevent扩展安装...2016-11-25
- <? $a="变量的值将被带入"; echo <<< help <pre> php中echo <<< 的应用 虽然echo "...";可以断行,但若其中如出现",则仍需做转义 处理。需写做: echo " ...2016-11-25
- 这篇文章介绍了php获取当前url地址的方法小结,有兴趣的同学可以参考一下 本文实例讲述了php获取当前url地址的方法。分享给大家供大家参考,具体如下: js 获取: ...2017-01-22