이 글에서는 쿠키에 대한 PHP와 JavaScript의 읽기, 쓰기 및 대화형 작업 방법을 주로 소개하여 php와 javascript가 쿠키를 설정하는 방법, php가 php와 js에 의해 설정된 쿠키를 읽는 방법, js가 php와 js에 의해 설정된 쿠키를 읽는 방법을 분석합니다. . 필요한 친구들은 관련 작업 기술을 참고할 수 있습니다.
이 문서에서는 쿠키에 대한 PHP 및 JavaScript의 읽기, 쓰기 및 대화형 작업 방법을 설명합니다. 참조를 위해 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.
다음 예에서는 여러 상호 작용 시나리오를 나열하고 JS와 PHP 간의 상호 작용 방법을 나열합니다. 정리하자면, 앞으로는 쿠키 문제로 어려움을 겪는 일이 없도록 하겠습니다.
<?php setcookie('php_cn_ck','php_中文_cookie'); setcookie('php_en_ck','php_english_cookie'); ?>
<script src="cookie.js"></script> <script> Cookies.set('js_cn_ck','js_中文_cookie',5000); Cookies.set('js_en_ck','js_english_cookie'); </script>
PHP 쿠키가 설정되었습니다:
php_cn_ck=php_中文_cookie
php_en_ck=php_english_cookie
JS 쿠키가 설정되었습니다:
js_cn_ck= js_중국어_쿠키
js_en_ck=js_english_cookie
쿠키 읽기
php
1 php read php set php cookie
<?php include('function.php'); $php_cn_ck=$_COOKIE['php_cn_ck']; $un_php_cn_ck=unescape($php_cn_ck); echo "解码前的中文cookie:php_cn_ck=$php_cn_ck<br><br>"; echo "解码后的中文cookie:un_php_cn_ck=$un_php_cn_ck<br><br>"; $php_en_ck=$_COOKIE['php_en_ck']; echo "英文cookie无需解码:php_en_ck=$php_en_ck<br><br>"; ?>
2 js read php set cookie
<script src="cookie.js"></script> <script> php_cn_ck=Cookies.get('php_cn_ck'); un_php_cn_ck = decodeURIComponent (escape(php_cn_ck)); document.write("解码前的中文cookie :php_cn_ck="+php_cn_ck+"<Br><br>"); document.write("解码后的中文cookie :un_php_cn_ck="+un_php_cn_ck+"<Br><br>"); php_en_ck=Cookies.get('php_en_ck'); document.write("英文cookie无需解码 :php_en_ck="+php_en_ck+"<Br><br>"); </script>
2 JS가 보낸 중국어 및 영어 쿠키 읽기
1 php read JS set js cookie
<?php $js_cn_ck=$_COOKIE['js_cn_ck']; $un_js_cn_ck=unescape($js_cn_ck); echo "解码前的中文cookie:js_cn_ck=$js_cn_ck<br><br>"; echo "解码后的中文cookie:un_js_cn_ck=$un_js_cn_ck<br><br>"; $js_en_ck=$_COOKIE['js_en_ck']; echo "英文cookie无需解码:js_en_ck=$js_en_ck<br><br>"; ?>
2 js js
<script> js_cn_ck=Cookies.get('js_cn_ck'); document.write("解码前的中文cookie :js_cn_ck="+js_cn_ck+"<Br><br>"); //un_js_cn_ck = decodeURIComponent (escape(js_cn_ck)); 调用这两句会出现js解析中断 //document.write("解码后的中文cookie :un_js_cn_ck="+un_js_cn_ck+"<Br><br>"); js_en_ck=Cookies.get('js_en_ck'); document.write("英文cookie无需解码 :js_en_ck="+js_en_ck+"<Br><br>"); </script>
요약:
1.PHP는 자체 기능을 사용하여 아무런 장애물이나 디코딩 없이 PHP 쿠키를 읽습니다.
2.js는 cookie.js 메서드를 사용하여 장애물이나 디코딩 없이 js 쿠키를 읽습니다.
3. JS는 php
4의 중국어 쿠키를 읽으려면 "decodeURIComponent(escape(php_cn_ck))" 기능을 수행해야 합니다. php는 php의 중국어 쿠키를 읽으려면 "unescape()" 기능을 수행해야 합니다.
쿠키 .js:
var Cookies = {}; /** * 设置Cookies */ Cookies.set = function(name, value){ var argv = arguments; var argc = arguments.length; var expires = (argc > 2) ? argv[2] : null; if(expires != null){ var exp = new Date(); exp.setTime(exp.getTime() + 8*3600 + expires); } alert(exp.toGMTString()); var path = (argc > 3) ? argv[3] : '/'; var domain = (argc > 4) ? argv[4] : null; var secure = (argc > 5) ? argv[5] : false; document.cookie = name + "=" + escape (value) + ((expires == null) ? "" : ("; expires=" + exp.toGMTString())) + ((path == null) ? "" : ("; path=" + path)) + ((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : ""); }; /** * 读取Cookies */ Cookies.get = function(name){ var arg = name + "="; var alen = arg.length; var clen = document.cookie.length; var i = 0; var j = 0; while(i < clen){ j = i + alen; if (document.cookie.substring(i, j) == arg) return Cookies.getCookieVal(j); i = document.cookie.indexOf(" ", i) + 1; if(i == 0) break; } return null; }; /** * 清除Cookies */ Cookies.clear = function(name) { if(Cookies.get(name)){ var expdate = new Date(); expdate.setTime(expdate.getTime() - (86400 * 1000 * 1)); Cookies.set(name, "", expdate); } }; Cookies.getCookieVal = function(offset){ var endstr = document.cookie.indexOf(";", offset); if(endstr == -1){ endstr = document.cookie.length; } return unescape(document.cookie.substring(offset, endstr)); };
위 내용은 php+JavaScript의 쿠키 읽기, 쓰기 및 대화형 작업 방법 분석 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!