转换为数组一些Cookie数据

时间:2011-10-25 16:00:02

标签: php arrays

我想将一些Cookie数据转换为数组。

例如

$cook = "lg=en; mi=ui; uo=lo; ri=ui";

我想将这些数据转换为数组,如下所示:

Array ( 
'lg' => 'en',
'mi' => 'ui',
'uo' => 'lo',
'ri' => 'ui'
)

我想将$cook数据转换为类似的数组作为输出。

请帮帮我。感谢

5 个答案:

答案 0 :(得分:3)

$cook = "lg=en; mi=ui; uo=lo; ri=ui";

foreach(explode("; ", $cook) as $v){
    $tmp = explode("=", $v);
    $return[$tmp[0]] = $tmp[1];
}

print_r($return);

答案 1 :(得分:2)

$arr1 = explode('; ',$cook);
$arr2 = array();

foreach($arr1 as $val)
{
   list($a,$b) = explode('=',$val);
   $arr2[$a] = $b;
}

ps:使用有意义的变量名。

答案 2 :(得分:1)

如果Cookie内容的格式为value1<separator>value2<separator>value3,则可以使用explode函数:

$array = explode($separator, $cook);

答案 3 :(得分:0)

$a1=explode(";",$cook);
foreach($a1 as $a)
{
   $b=explode("=",$a);
   $arr[$b[0]]=$b[1];
}

$ arr是你的数组

答案 4 :(得分:0)

这是怎么回事: arr =“lg = en; mi = ui; uo = lo; ri = ui”.split(';')

你应该首先摆脱多余的空间