我有2條與同一主題相關的數據是國家代碼。PHP Cookies - 在一個cookie中存儲2條數據
如:澳大利亞和AU
是否有存儲2個數據在一個cookie的一個優選的方法是什麼? 或者更好地使用2個餅乾。
對不起,如果這是一個愚蠢的問題...只是對其他民族的意見感興趣。
THX
我有2條與同一主題相關的數據是國家代碼。PHP Cookies - 在一個cookie中存儲2條數據
如:澳大利亞和AU
是否有存儲2個數據在一個cookie的一個優選的方法是什麼? 或者更好地使用2個餅乾。
對不起,如果這是一個愚蠢的問題...只是對其他民族的意見感興趣。
THX
如果是我,我只想追加數據使用特定粘合起來,然後爆炸的字符串時,我想再次分隔值。
$cookeString = $country . '+' . $countryCode;
list($country, $countryCode) = explode('+', $cookieString);
但在所有誠實它沒有意義存儲的國家和國家代碼,只是存儲的國家代碼,並使用國家代碼作爲重點查找國家數據。
良好的呼叫...將只存儲國家代碼和做一個數據庫調用...謝謝你...一旦我打勾了盒子...乾杯 – Adam 2012-01-31 05:39:41
是的,沒有後顧之憂。祝你好運。 – 2012-01-31 06:39:30
爲什麼不使用JavaScript並創建一個json對象?
var cc = {
australia: 'au',
India : 'In'
}
您可以使用作爲cc.India
我知道,你問餅乾,但我需要存儲國家代碼,我也這樣。它的快速和容易。
你可以通過多種方式做到這一點,無論是多個cookie,也可以存儲一個像JSON這樣的對象,或者你可以簡單地放一個字符串,例如::和用戶php的eplode函數。總而言之,它是一種偏好,取決於你的行爲。如果您使用JSON對象,則可以通過使用json_encode和json_decode輕鬆地在對象和數組之間來回切換。再次是關於你的舒適程度在哪裏。總而言之,如果你真的想把它保存在一個單獨的cookie中,你最終還是要處理一系列數據。
舉例:通過腳本可以注射和斷供其他需要在運行之前
<?php
//set the cookie
$cookieData = json_encode(array("value_one", "value_two"));
setcookie("MyCookie", $cookieData , time()+3600);
//read the cookie
$cookieInfo = json_decode($_COOKIE['MyCookie']);
echo $cookieInfo[0]."<br>";
echo $cookieInfo[1]."<br>";
//or
for($i = 0; $i < count($cookieInfo); $i++)
{
echo $cookieInfo[$i]."<br>";
}
可以使這個概念相當大的,但要注意的cookies是裸露的易於操作的客戶端,從而淨化你的Cookie變量,通過cookie信息檢查數據庫以查看使用是否有效的示例。
要記住的另一件事是一些瀏覽器有一個cookie的大小,你最大的大小隻有4kb。
此外,您可以更熟悉使用JSON和數組的邏輯,如果您不熟悉它們,它們會非常棘手,但是一旦您開始使用它們並理解它們,您會發現它們是您最好的朋友。
您還可以在cookie名稱中使用數組表示法來設置數組cookie。
PHP代碼 -
// set the cookies
setcookie("cookie[one]", "cookie1");
setcookie("cookie[two]", "cookie2");
setcookie("cookie[three]", "cookie3");
// after the page reloads, print them out
if (isset($_COOKIE['cookie'])) {
foreach ($_COOKIE['cookie'] as $name => $value) {
$name = htmlspecialchars($name);
$value = htmlspecialchars($value);
echo "$name : $value <br />";
}
}
輸出:
之一:COOKIE1
二:COOKIE2
三:cookie3
一個問題,這是不是很* *與此相同,但可能對您有所幫助:http://stackoverflow.com/questions/139132 8/one-one-many-values-or-many-cookies-with-one-value – 2012-01-31 05:35:24
當然,只需用一些分隔符(,|)分隔值,然後編寫函數來存儲和檢索。如果你存儲的是像AU這樣的密鑰,那爲什麼還要存儲澳大利亞?似乎再次似曾相識。 – 2012-01-31 05:36:51