PHP setcookie设置Cookie用法(及设置无效的问题)
2019/6/30 15:23:24
本文主要是介绍PHP setcookie设置Cookie用法(及设置无效的问题),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
结果碰到一个问题,setcookie设置了Cookie并没有生效,在浏览器端也没有看到。查了一下,原来是setcookie是通过HTTP请求响应的Header来完成的,需要在请求响应内容输出之前执行(就像其他Header设定一样)。
在php.ini中error_reporting = E_ALL的情况下,输出内容之后再setcookie会弹出以下提示:
Warning: Cannot modify header information – headers already sent by (output started at C:\xampp\htdocs\b.php:2) in … on line …
但因为当时php.ini设置成了error_reporting = E_ALL & ~E_NOTICE,于是没有任何提示,所以开发的时候还是建议设成error_reporting = E_ALL 方便观察到一些异常情况。
附一个setcookie用法实例
a.php
<?php
setcookie("page", "a.php");
$page = $_COOKIE["page"] ? $_COOKIE["page"] : "unknown";
echo "From " . $page . "<br /><br />";
?>
This is a.php. Go to <a href="b.php">b.php</a>
b.php
<?php
setcookie("page", "b.php");
$page = isset($_COOKIE["page"]) ? $_COOKIE["page"] : "unknown";
echo "From " . $page . "<br /><br />";
?>
This is b.php. Go to <a href="a.php">a.php</a>
在php.ini中error_reporting = E_ALL的情况下,输出内容之后再setcookie会弹出以下提示:
复制代码 代码如下:
Warning: Cannot modify header information – headers already sent by (output started at C:\xampp\htdocs\b.php:2) in … on line …
但因为当时php.ini设置成了error_reporting = E_ALL & ~E_NOTICE,于是没有任何提示,所以开发的时候还是建议设成error_reporting = E_ALL 方便观察到一些异常情况。
附一个setcookie用法实例
a.php
复制代码 代码如下:
<?php
setcookie("page", "a.php");
$page = $_COOKIE["page"] ? $_COOKIE["page"] : "unknown";
echo "From " . $page . "<br /><br />";
?>
This is a.php. Go to <a href="b.php">b.php</a>
b.php
复制代码 代码如下:
<?php
setcookie("page", "b.php");
$page = isset($_COOKIE["page"]) ? $_COOKIE["page"] : "unknown";
echo "From " . $page . "<br /><br />";
?>
This is b.php. Go to <a href="a.php">a.php</a>
这篇关于PHP setcookie设置Cookie用法(及设置无效的问题)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-01开源 PHP 商城项目 CRMEB 安装和使用教程
- 2024-11-01用php和mysql写无限分类,有哪几种方法-icode9专业技术文章分享
- 2024-10-31php数据分表导出时部分数据无法导出什么原因-icode9专业技术文章分享
- 2024-10-30有经验的 PHP 开发者学习一门新的编程语言,有哪些推荐的有前景的语言-icode9专业技术文章分享
- 2024-10-21php 检测图片是否篡改过-icode9专业技术文章分享
- 2024-10-20fruitcake/php-cors 该怎么使用-icode9专业技术文章分享
- 2024-10-18PHP7.1可以使用哪个版本的swoole-icode9专业技术文章分享
- 2024-10-17php8 执行php -v提示 command not found是什么原因?-icode9专业技术文章分享
- 2024-10-17nginx 怎么配置 php?-icode9专业技术文章分享
- 2024-09-28怎么把PHP程序打包?-icode9专业技术文章分享