Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP内爆-分解逗号分隔值,用于if else语句_Php_Html_Mysql_Database_Phpmyadmin - Fatal编程技术网

PHP内爆-分解逗号分隔值,用于if else语句

PHP内爆-分解逗号分隔值,用于if else语句,php,html,mysql,database,phpmyadmin,Php,Html,Mysql,Database,Phpmyadmin,我正在从事一个项目,需要在数据库字段中输入逗号分隔的值,然后提取数据以用于if和else语句 例如:在数据库字段user\u status中,我有像admin、admin1、admin2、admin3……等用户名。我希望使用以下值: $user_status = $row['user_status']; // database values of all the usernames $username = $_SESSION['username']; // username of the

我正在从事一个项目,需要在数据库字段中输入逗号分隔的值,然后提取数据以用于if和else语句

例如:在数据库字段
user\u status
中,我有像
admin、admin1、admin2、admin3……等用户名。我希望使用以下值:

$user_status = $row['user_status']; // database values of all the usernames
$username    = $_SESSION['username']; // username of the logged in user eg. admin

if($user_status == $username) // if session username matches with a username in the database field
{
  statements;
}else{
  statements;
}

我想从数据库中提取逗号分隔的数据库值,并匹配登录用户的用户名是否与数据库中的多个用户名之一匹配。但我不太确定如何做到这一点。请帮助我找到专家。

使用
分解创建一个数组,并在数组中使用
来检查
$username
是否存在于
$user\u status
数组中

<?php
$username    = $_SESSION['username'];
$user_status = explode(',', $row['user_status']);

if (in_array($username, $user_status)) {
    //...
}

作为替代解决方案,您可以搜索封装在comas中的字符串

if (strpos($user_status, ','.$username.',') !== false) 
   echo 'user found';
else 
    echo 'not found';

看看php函数
explode
in_array
这个问题与您在上的另一个问题有显著不同吗?是的。。完全不同。。。两者都包含关于内爆爆炸的问题,但查询完全不同..当我回显$user_status=explode(',',$uhs['pads_status']);它返回通知:第87行C:\xampp\htdocs\sites\ptc\member_ads.php中的数组到字符串转换您不需要回显变量赋值,只需回显函数结果,只需使用回显explode…@LaptopMedico为什么回显
$user\u status
?你想达到什么目标
$user\u status
是一个数组,因此必须使用
print\u r
var\u dump
进行调试。也许你应该更新你的问题,或者最好创建一个新的问题。