PHP-检查字段是否包含vs等于
我试图检查我的一个字段是否包含(而不是等于)从$user变量抓取的项。我的字段(field_targetuser)包含一个数字字符串:45、409、47、100 我试图查看字段\ u targetuser是否包含抓取的uid(47)。为了实现这一点,我应该如何写下面的内容?我为我的幼稚道歉PHP-检查字段是否包含vs等于,php,Php,我试图检查我的一个字段是否包含(而不是等于)从$user变量抓取的项。我的字段(field_targetuser)包含一个数字字符串:45、409、47、100 我试图查看字段\ u targetuser是否包含抓取的uid(47)。为了实现这一点,我应该如何写下面的内容?我为我的幼稚道歉 global $user; if($user->uid == $data->field_targetuser) { return false; } else {
global $user;
if($user->uid == $data->field_targetuser)
{
return false;
} else {
return true;
}
将explode()与,
参数一起使用,这将生成一个ID数组
$arrTargetUserIds = explode(',', $data->field_targetuser);
然后在数组中查找
if(in_array($user->uid, $arrTargetUserIds)){
}
将explode()与,
参数一起使用,这将生成一个ID数组
$arrTargetUserIds = explode(',', $data->field_targetuser);
然后在数组中查找
if(in_array($user->uid, $arrTargetUserIds)){
}
通常使用PHPexplode()
将字符串拆分为一个数组,并在_array()中使用检查uid是否在分解的数组中。还可以添加array\u map()
来修剪数字周围的空白。让我们这样做吧-
<?php
$user = new stdClass();
$data = new stdClass();
$user->uid = 47;
$data->field_targetuser = array_map('trim', explode(',', '45, 409, 47, 100'));
if(in_array($user->uid,$data->field_targetuser))
{
print "Exists";
return true;
} else {
print "Not Exists";
return false;
}
?>
演示:通常使用PHPexplode()
将字符串拆分为一个数组,并在_array()中使用检查uid是否在分解的数组中。还可以添加array\u map()
来修剪数字周围的空白。让我们这样做吧-
<?php
$user = new stdClass();
$data = new stdClass();
$user->uid = 47;
$data->field_targetuser = array_map('trim', explode(',', '45, 409, 47, 100'));
if(in_array($user->uid,$data->field_targetuser))
{
print "Exists";
return true;
} else {
print "Not Exists";
return false;
}
?>
演示:由于它是一个字符串,您可以使用strps()
来确定字符串中是否有特定的数字。不要对此使用字符串操作。如果您检查47
,您还将匹配147
。使用explode()
将字符串拆分为一个数组,然后在_array()中使用
@JayBlanchard这对像“XX47”这样的数字不是问题吗?是的,当然会。我假设这是一根著名的弦。@Barmar啊,这是有道理的。那么这个应该是什么样子呢?PHP对我来说是相当新的…因为它是一个字符串,您可以使用strpos()
来确定字符串中是否有特定的数字。不要对此使用字符串操作。如果您检查47
,您还将匹配147
。使用explode()
将字符串拆分为一个数组,然后在_array()中使用
@JayBlanchard这对像“XX47”这样的数字不是问题吗?是的,当然会。我假设这是一根著名的弦。@Barmar啊,这是有道理的。那么这个应该是什么样子呢?PHP对我来说是相当新的。。。