php中cookie实现二级域名可访问操作的方法_PHP
本文实例讲述了php中cookie实现二级域名可访问操作的方法。分享给大家供大家参考。具体方法如下:
cookie在一些应用中很常用,假设我有一个多级域名要求可以同时访问主域名绑定的cookie,下面就来给大家具体介绍在php中利用setcookie实现二级域名可以成功访问主域名cookie值的方法.
有时候两个域名可能在不同的服务器上,但是我们依然希望二级域名能够顺利访问主域名的cookie,主域名可以顺利访问二级域名的cookie,比如sc.bitsCN.com 希望能访问 www.bitsCN.com 和 blog.bitsCN.com 的 cookie
下面介绍3种你可能常听到的全局cookie设置方式.
第一种实例代码如下:
代码如下:
setcookie("jb51",$s,time()+3600*12,'/','*.bitsCN.com');
*号无法成功设置一个cookie
第二种实例代码如下:
代码如下:
setcookie("jb51",$s,time()+3600*12,'/','.bitsCN.com');
成功设置一个全局cookie,这样在ss.bitsCN.com下也能正确读取
第三种实例代码如下:
代码如下:
setcookie("jb51",$s,time()+3600*12,'/','bitsCN.com');
成功设置一个全局cookie,在ss.bitsCN.com下也能正确读取
这种方式的理解是仅仅bitsCN.com能够读取,在FireFox下测试成功,IE下测试成功,代码如下:
代码如下:
setcookie("jb51",$s,time()+3600*12,'/','ss.bitsCN.com');
设置一个仅仅在ss.bitsCN.com域名下可以正确读取的cookie,网络上标准的说法为.bitsCN.com这样,也有*的说法(该说法完全错误).下面推荐一个不错的php cookie操作的类,可以设置cookie、获取cookie、删除cookie,代码如下:
代码如下:
/**
* php cookie类
* class:PHP_COOKIE
*/
class PHP_COOKIE
{
var $_name = "";
var $_val = array();
var $_expires;
var $_dir = '/';// all dirs
var $_site = '';
function PHP_COOKIE($cname, $cexpires="", $cdir="/", $csite="")
{
$this->_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(emptyempty($cname) && isset($this)){
$cname=$this->_name;
}
if(!emptyempty($_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(emptyempty($value)){
unset($this->_val[$var]);
}
}
function clear()
{
$this->_val=array();
}
function set()
{
if(emptyempty($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);
}
}
?>
希望本文所述对大家的PHP程序设计有所帮助。

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Dans ce chapitre, nous comprendrons les variables d'environnement, la configuration générale, la configuration de la base de données et la configuration de la messagerie dans CakePHP.

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

Pour travailler avec la date et l'heure dans cakephp4, nous allons utiliser la classe FrozenTime disponible.

Pour travailler sur le téléchargement de fichiers, nous allons utiliser l'assistant de formulaire. Voici un exemple de téléchargement de fichiers.

Dans ce chapitre, nous allons apprendre les sujets suivants liés au routage ?

CakePHP est un framework open source pour PHP. Il vise à faciliter grandement le développement, le déploiement et la maintenance d'applications. CakePHP est basé sur une architecture de type MVC à la fois puissante et facile à appréhender. Modèles, vues et contrôleurs gu

Travailler avec la base de données dans CakePHP est très simple. Nous comprendrons les opérations CRUD (Créer, Lire, Mettre à jour, Supprimer) dans ce chapitre.

Le validateur peut être créé en ajoutant les deux lignes suivantes dans le contrôleur.
