2012-03-31 55 views
0

如何訪問USER_ID: 這是我的cookie的print_r:如何訪問餅乾陣列子變量

Array 
(
    [PHPSESSID] => gv0hsh6uel9kiuprdoc0uqboq4 
    [oauth_token] => 40533855-FNM77JeuJIPdKclYyaT2Fi9jZRu2NGAHh5FeveNk 
    [oauth_token_secret] => C6GDTEu60rGa4aDbqjncm6yfUf9Xc9520AuX9GXag 
    [SocialAuth] => a:2:{s:4:"type";s:8:"facebook";s:7:"user_id";s:2:"22";} 
    [__utma] => 157144508.1187834205.1333154906.1333154906.1333154906.1 
    [__utmb] => 157144508.35.10.1333154906 
    [__utmc] => 157144508 
    [__utmz] => 157144508.1333154906.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none) 
) 

在此我的用戶ID是在SocialAuth行的末尾。「 22" 。但我似乎無法訪問它。

$user = $_COOKIE["SocialAuth"]["user_id"]; 

返回「a」。

我正在做這個對嗎? 在此先感謝。

回答

4

您在$_COOKIE['SocialAuth']中有一個序列化數組。看看手冊頁serializeunserialize

使用反序列化這樣的訪問用戶ID:

$user = unserialize($_COOKIE['SocialAuth'])['user_id']; 

或先於PHP 5.4:

$arr = unserialize($_COOKIE['SocialAuth']); 
$user = $arr['user_id']; 
+0

真棒。效果很好。感謝您的指導。 :) – Wakenn 2012-03-31 07:57:45

+0

@Wakenn不客氣:) – Paulpro 2012-03-31 19:12:53