本文目錄一覽:
- 1、在php中怎麼設置cookie
- 2、在php中如何使用cookie?
- 3、詳解PHP中cookie和session的區別及cookie和session用法小結
- 4、php 帶cookie訪問鏈接
- 5、PHP如何讀取COOKIES
- 6、PHP中如何使用Cookie
在php中怎麼設置cookie
php設置和獲取cookie
setcookie(‘mycookie’,’value’);
//函數原型:int setcookie(string name,string value,int expire,string path,string domain,int secure)
echo($mycookie);
echo($HTTP_COOKIE_VARS[‘mycookie’]);
echo($_COOKIE[‘mycookie’]);
刪除Cookie
(1)調用只帶有name參數的setcookie();
(2)使失效時間為time()或time-1;
?php setcookie(‘name’); ?
setcookie(‘mycookie’);或setcookie(‘mycookie’,”);或setcookie(“mycookie”,false);
//setcookie(‘mycookie’,”,time()-3600);
echo($HTTP_COOKIE_VARS[‘mycookie’]);
print_r($_COOKIE);
建議刪除方法:
setcookie(‘mycookie’,”,time()-3600);
PHP提供一個很好用的函數mktime()。
你只要按順序傳送給mktime()你希望表示的小時,分鐘,秒數,月份,日期,及年份,
mktime()就會返回該日期自1970年1月1日的總秒數。
因此,如果需要模擬 Y2K 問題:
$y2k = mktime(0,0,0,1,1,2000);
setcookie(‘name’,’value’,$y2k);
setcookie(‘name’, ‘value’, time+3600);
setcookie(‘name’, ‘value’, $y2k, ‘~/myhome’, ‘.domain.com’);
獲取COOKIE過期時間的辦法
$expire = time() + 86400; // 設置24小時的有效期
setcookie (“var_name”, “var_value”, $expire); // 設置一個名字為var_name的cookie,並制定了有效期
setcookie (“var_name_expire”, $expire, $expire); // 再將過期時間設置進cookie以便你能夠知道var_name的過期時間
註:
在發送 cookie 時,cookie 的值會自動進行 URL 編碼。接收時會進行 URL 解碼。
如果你不需要這樣,可以使用 setrawcookie() 代替。
在php中如何使用cookie?
setcookie() 函數用於設置 cookie
例如創建名為 “user” 的 cookie,把為它賦值 “Alex Porter”。我們也規定了此 cookie 在一小時後過期:
?php
setcookie(“user”, “Alex Porter”, time()+3600);
?
取回 cookie 的值
?php
echo $_COOKIE[“user”];
print_r($_COOKIE);
?
當刪除 cookie
?php
// set the expiration date to one hour ago
setcookie(“user”, “”, time()-3600);
?
詳解PHP中cookie和session的區別及cookie和session用法小結
cookie:
值保存在客戶端。
客戶端和服務端都能夠創建。
客戶端和服務端都能夠獲取到。
可以在服務端的任何位置開始使用,無需事先聲明。
session:
值保存在服務端,客戶端只保存標識。
只能被服務端創建。
只能在服務端獲取到值。
必須在所有輸出前使用session_start(),申明開啟。然後才能在後續的執行使用。
php 帶cookie訪問鏈接
四、需要cookie支持的採集
對於模擬登錄的應用,單單提交參數和模擬來路並不能解決問題,這時候我們就需要保存或者提交相應的Cookie參數,這個在PHP cURL裡面也提供了相應的參數:
CURLOPT_COOKIE: 直接使用字元串方式提交cookie參數
CURLOPT_COOKIEFILE: 使用文件方式提交cookie參數
CURLOPT_COOKIEJAR: 保存提交後反饋的cookie數據
//使用提交後得到的cookie數據做參數
curl_setopt($ch,CURLOPT_COOKIEFILE,$cookie_file);
更多內容請參考我的博客《PHP cURL實現模擬登錄與採集使用方法詳解教程》
PHP如何讀取COOKIES
【IT168 技術文檔】必須在伺服器傳送任何內容給客戶瀏覽器之前為 Cookies 賦值。要做到這一點, cookies 的設置就必須放在 HEAD 標籤內: ?phpsetcookie(“CookieID”, $USERID);? HTML BODY /BODY /HTML setcookie 函數一共有六個參數,用逗號來分隔:
cookie 的名稱,是一個字元串,例如: “CookieID” 。其間不允許有冒號,逗號和空格。這個參數是必須的,而其它的所有參數都是可選的。如果只有這一個參數被給出,那麼這個 cookie 將被刪除。
cookie 的值,通常是一個字元串變數,例如: $USERID 。也可以為它賦一個 ? 來略過值的設置。
cookie 失效的時間。如果被省略(或者被賦值為零), cookie 將在這個對話期( session )結束後失效。這個參數可以是一個絕對的時間,用 DD-Mon-YY HH:MM:SS 來表示,比如: “24-Nov-99 08:26:00” 。而更常用的是設置一個相對時間。這是通過 time() 函數或者 mktime 函數來實現的。比如 time()+3600 將使得 cookie 在一個小時後失效。
一個路徑,用來匹配 cookie 的。當在一個伺服器上有多個同名的 cookie 的設置,為避免混淆,就要用到這個參數了。使用 “/” 路徑的和省略這個參數的效果是一樣的。要注意的是 Netscape 的 cookie 定義是把域名放在路徑的前面的,而 PHP 則與之相反。
伺服器的域名,也是用來匹配 cookie 的。要注意的是:在伺服器的域名前必須放上一個點( . )。例如: “.friendshipcenter.com” 。因為除非有兩個以上的點存在,否者這個參數是不能被接受的。
cookie 的安全級,是一個整數。 1 表示這個 cookie 只能通過「安全」的網路來傳送。 0 或者省略則表示任何類型的網路都可以
PHP中如何使用Cookie
比如設置一個名為 MyCookier的Cookie,PHP會自動從WEB伺服器接收的HTTP頭裡把它分析出來,並形成一個與普通變數一樣的變數,名為$ myCookie,這個變數的值就是Cookie的值。數組同樣適用。另外一個辦法是引用PHP的全局變數$HTTP_COOKIE_VARS數組。分別舉例如下:(假設這些都在以前的頁面里設置過了,並且仍然有效)echo $MyCookie;echo $CookieArray[0];echo $_COOKIE[“MyCookie”];echo $HTTP_COOKIE_VARS[“MyCookie”];要刪除一個已經存在的Cookie,有兩個辦法:1、SetCookie(「Cookie」, 「」);2、SetCookie(「Cookie」, 「value」 , time()-1 / time() );使用Cookie的限制1、必須在HTML文件的內容輸出之前設置;2、不同的瀏覽器對Cookie的處理不一致,且有時會出現錯誤的結果。3、限制是在客戶端的。
原創文章,作者:PMVE,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/137370.html