PHP将字符串解析成变量或数组_PHP解析cookie字符串为数组并还原为字符串
parse_str() 函数把字符串解析到变量中。
注释:如果未设置 array 参数,由该函数设置的变量将覆盖已存在的同名变量。
语法
parse_str(string,array)
参数 | 描述 |
---|---|
string | 必需。规定要解析的字符串。 |
array | 可选。规定存储变量的数组名称。该参数指示变量存储到数组中。 |
<?php parse_str("name=远昔&age=博客"); echo $name."==".$age; //运行结果:远昔==博客 ?>
例如,假设有如下cookie字符串:
可以使用以下代码解析:
输出结果为
解释
str_replace('; ', '&', $cookieStr) 将cookie字符串中的分号和空格替换为&符号,以便使用parse_str()函数解析。
parse_str()函数将解析后的cookie键值对保存在$cookies数组中。
print_r()函数输出数组内容。
还原字符串
可以使用PHP内置的函数http_build_query()将数组转换为URL编码的查询字符串,然后再替换掉一些特殊字符,即可得到Cookie字符串。
例如,假设有如下数组:
可以使用以下代码将其转换为Cookie字符串:
输出结果为:
解释:
http_build_query()函数将数组转换为URL编码的查询字符串。
str_replace()函数将查询字符串中的&符号替换为分号和空格,将=符号替换为=号,以得到Cookie字符串。
评论
发表评论: