我用這個函數來設置cookie整個域名:PHP的setcookie整個域名
setcookie("tuittingID", $random, mktime(0, 0, 0, 12, 31, 2015), '/', '.domainname.com');
現在的問題是,我不知道什麼domainname.com
會,因爲這個腳本會不同的人使用不同的域名。
我有最好的辦法做同樣的事情,但沒有客戶端編輯該行。
有沒有辦法?
請讓我知道。
我用這個函數來設置cookie整個域名:PHP的setcookie整個域名
setcookie("tuittingID", $random, mktime(0, 0, 0, 12, 31, 2015), '/', '.domainname.com');
現在的問題是,我不知道什麼domainname.com
會,因爲這個腳本會不同的人使用不同的域名。
我有最好的辦法做同樣的事情,但沒有客戶端編輯該行。
有沒有辦法?
請讓我知道。
檢查$_SERVER
超全局。它包含地址的各個部分(例如在$_SERVER['HTTP_HOST']
),儘管您可能仍然需要自己做一些切割。您可以使用.
將主機名分解爲數組。作爲分隔符。結合最後兩項,您將獲得域名(SLD + TLD)。
如果要將此代碼用作庫,那麼我會向用戶(庫的用戶)提供使用完整域,僅使用第二級域或自定義設置的可能性。
setcookie("tuittingID", $random, mktime(0, 0, 0, 12, 31, ".".$_SERVER['HTTP_HOST']);
您正在尋找$_SERVER['HTTP_HOST']
你需要做這樣的事情來設置域名:
setcookie(name, value, expire, path, preg_replace('/www/','',$_SERVER['HTTP_HOST']));
這變得像'foo.co.uk'域自動痛苦。 – Yahel
是的。如果您願意,您可以創建一個例外列表(帶有固定SLD的TLD),但將其定製是一件好事。 – GolezTrol