我想知道变量是否可以在数组中使用。请参见下面的($userArray=array($usersBought);)
$user = "Darren";
$usersBought = $row['usersBought'];
$userArray = array($usersBought);
if (in_array($user, $userArray)) {
$button = "yes";
}
如果可以,数据库中的文本应该是什么?我试过这个。。。
"Darren","Adam","Coral"
Darren,Adam,Coral
Darren Adam Coral
此数组处于while循环中,并在循环的页面上显示多个无序列表。这就是为什么我有$usersBought=$row['usersBought'];那里
最佳答案
为了使数据库正确规范化,应该以这样的方式构造表,即不在数据库中存储数组,而是每个用户都是表中的一行。
然而,要回答您的问题,您需要使用explode()
函数。
//$row['usersBought'] = "Darren,Adam,Coral"; <- Example
$user = "Darren";
$usersBought = $row['usersBought'];
$userArray = explode(",", $usersBought);
if (in_array($user, $userArray)) {
$button = "yes";
}
在上面的例子中,它假设用户由逗号分隔,但是您可以将第一个参数更改为您想要的任何参数。