本文目錄一覽:
php怎麼用cookie存儲多維數組
方法一:先用serialize序列化數組,再存入COOKIE
,讀出來時用unserialize得到原來的數組
//存入
$arr
=
array(1,2,3);
$arr_str
=
serialize($arr);
setcookie(“a”,$arr_str);
//取出
$arr_str
=
$_COOKIE[‘a’];
$arr
=
unserialize($arr_str);
方法二:設定多鍵值cookie,注意必須給鍵值
$arr
=
array(1,2,3);
setcookie(“a[0]”,
$arr[0]);
setcookie(“a[1]”,
$arr[1]);
setcookie(“a[2]”,
$arr[2]);
php 將cookie的值寫入文件
head
/head
body
?php
header(“content-type:text/html; charset=utf-8”);
//在PHP中設置COOKIE
setcookie(“phpCookie”,”我是PHP產生的Cookie”, time()+3600);
?
script language=”javascript”
//JavaScript中設定Cookie值
function setCookie(name,value)
{
var Days = 1/1440; //此 cookie 將被保存 30 天
var exp = new Date(); //new Date(“December 31, 9998”);
exp.setTime(exp.getTime() + Days*24*60*60*1000);
document.cookie = name + “=”+ escape (value) + “;expires=” + exp.toGMTString();
}
//JS取JS保存的cookie
function getCookie2(name)
{ var temp = name + “=”;
var tempLen = temp.length;
var cookieLen = document.cookie.length;
var i = 0;
while (i cookieLen) {
var j = i + tempLen;
if (document.cookie.substring(i, j) == temp) {
return getCookieVal(j);
}
i = document.cookie.indexOf(” “, i) + 1;
if (i == 0) break;
}
return null;
}
//輔助
function getCookieVal (offset) {
var endstr = document.cookie.indexOf (“;”, offset);
if (endstr == -1) {
endstr = document.cookie.length;
}
return unescape(document.cookie.substring(offset, endstr));
}
//js取PHP保存的Cookie值
function getCookie(sName)
{
var aCookie = document.cookie.split(“; “);
for (var i=0; i aCookie.length; i++){
var aCrumb = aCookie[i].split(“=”);
if (encodeURIComponent(sName) == aCrumb[0])
return decodeURIComponent(aCrumb[1]);
}
return null;
}
/script
script
//顯示經過解碼的PHP設置的COOKIE
alert(getCookie(“phpCookie”));
//使用JavaScript設置COOKIE值
setCookie(“jsCookie”,”我是JavaScript產生的Cookie”);
alert(getCookie2(“jsCookie”));
/script
?php
//顯示JavaScript設置的COOKIE的
if (isset($_COOKIE[“jsCookie”]))
echo urldecode($_COOKIE[“jsCookie”]);
echo “br /”;
echo $_COOKIE[“phpCookie”];
?
/body/html
php如何將一個數組保存在cookie裡面
先用serialize序列化數組,再存入COOKIE,讀出來時用unserialize得到原來的數組
代碼:
//存入
$arr = array(1,2,3);
$arr_str = serialize($arr);
setcookie(“a”,$arr_str);
//取出
$arr_str = $_COOKIE[‘a’];
$arr = unserialize($arr_str);
2. 設定多鍵值cookie,注意必須給鍵值
$arr = array(1,2,3);
setcookie(“a[0]”, $arr[0]);
setcookie(“a[1]”, $arr[1]);
setcookie(“a[2]”, $arr[2]); 結果:數組所有元素都存到了。
數組長度 :3
Array ( [0] =gt; 1 [1] =gt; 2 [2] =gt; 3 )
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/190285.html