php - 检查 PHP 中的 session 值数组

标签 php arrays session

session 中存储了一组用户状态。这有效:

<?php if ($_SESSION['_app_user']['data']['state']['1']) { ?>

  <p>User has state 1</p>

<?php } ?>

但是,选择多个状态不会:

<?php if ($_SESSION['_app_user']['data']['state']['1,6,10']) { ?>

  <p>User has state 1 or 6 or 10</p>

<?php } ?>

如何检查多个状态?

最佳答案

通过检查多个。

您可能会发现将最小公分母存储到临时变量会更容易:

$s = $_SESSION['_app_user']['data']['state'];
if(isset($s[1]) || isset($s[6]) || isset($s[10])) {
    echo 'Tahdah!';
}
unset($s);

此外,请对字符串使用引号。它使代码更清晰,并且让 PHP 解释器无需猜测您指的是一个字符串,而不是一个名为 _app_user 的常量:)

关于php - 检查 PHP 中的 session 值数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2390775/

相关文章:

PHP print_r 显示从 CSV 文件分解的关联数组的内容,但 echo 无法访问其中的单个值

php - 开发 Web 应用程序花费的时间太长

java - 如何在 Java 代码中从数组中删除某些元素

php - 如何取消设置 session ID 以便注销用户?

Hibernate session.close() 不返回连接到池

asp.net-mvc - MVC - SQL session 状态与在数据库中存储值

来自服务器时间戳的 JavaScript 异步时钟

php - 使用 php 一次一页地显示数据

javascript - 圆坐标到 Javascript 中的数组

JavaScript,如何快速复制对象数组,但仅复制该对象中我需要的值