初始问题:如何在 PHP Cookie 中正确存储数组?
解决方案 1:将 Cookie 存储为 JSON
要保留数组结构,请将数组转换为 JSON 字符串:
<code class="php">setcookie('your_cookie_name', json_encode($info), time()+3600);</code>
检索 cookie 值:
<code class="php">$data = json_decode($_COOKIE['your_cookie_name'], true);</code>
警告:由于安全问题,请避免使用序列化/反序列化。
解决方案 2:替代数组存储
存储数组各个 cookie 中的元素:
<code class="php">setcookie('my_array[0]', 'value1' , time()+3600); setcookie('my_array[1]', 'value2' , time()+3600); setcookie('my_array[2]', 'value3' , time()+3600);</code>
从 $_COOKIE 访问数组:
<code class="php">echo '<pre class="brush:php;toolbar:false">'; print_r( $_COOKIE ); die();</code>
此方法依赖于 PHP 功能,该功能将包含类似数组语法的 cookie 名称视为实际数组。
以上是如何有效地将 PHP 数组存储在 cookie 中?的详细内容。更多信息请关注PHP中文网其他相关文章!