我想在菜单上显示admin按钮,只有当$_SESSION['user']
等于用$admins
表示变量时(我想在几个用户中存储多个值)。
我知道我可以通过 SQL 来做到这一点,但我想知道这是否可以通过 PHP 来实现,如果是这样的话。
编辑:更具体一点我知道我可以通过在数据库中查找与管理员组匹配的用户来实现,但我没有这个设置。
即使SQL是最简单的选项,我真的希望有一种方法可以使用 PHP ,我正在阅读PHP_AUTH_USER
相当多的内容,但我想将几个用户存储起来一个变量,如果可能的话?
答案 0 :(得分:2)
$admins = array("username1","username2","username3");
session_start();
if(in_array($_SESSION["user"],$admins))
{
//do stuff
}
干杯!
答案 1 :(得分:0)
听起来你在问什么替代地方存储用户列表,以及他们拥有哪些权限(管理与否)。
你可以: *在PHP文件中硬编码(非常简单!) *将它放在配置文件中(ini,xml,你可以命名)
无论如何......你需要把这个列表放在'某处'。它不会停留在PHP内存中,所以这个地方需要成为PHP可以从中加载它的地方。
你不能只是放入一个变量(比如$ _SESSION)并希望留在那里。所以除了数据库(确实是一个合理的选择),其他两个是你的选择。
答案 2 :(得分:0)
您正在寻找的是名为array
的数据结构。您可以在此处找到更多信息:http://php.net/manual/en/language.types.array.php
关键是它是key => value
对的结构。您应该深入研究这一点,因为作为数据类型,数组允许您实现许多内容,例如looping through data
,轻松searching
数据,sorting
等等。
这是一个对几乎任何类型的编程语言都有效的基本概念,所以请帮个忙!