【发布时间】:2016-12-06 04:09:32
【问题描述】:
我需要比较两个字符串变量,一个是通过循环从对象数组中获取的,另一个是用户获取的。
当用户输入:Sam,ABC
$in = $request->input('name');
获取此输入,并将字符串“ABC”存储在另一个变量中。
$u_in = explode(",", $in);
$user_dept = $u_in[1];
现在 $user_dept 有字符串“ABC”。
从数据库中取出对象数组$users,在dept列下存储要比较的部门。
foreach ($users as $p => $val ) {
$c = $val->dept;
if(strcasecmp($user_dept,$c) == 0 ){
echo "yes";
} else{
echo "no";
}
}
但是在这里,即使字符串相同,比较也总是返回“no”。 目的是匹配用户的部门。 要使用的正确代码是什么?
【问题讨论】:
-
是 $dept= $user_dept?
-
是的,我已经完成了更改
-
is $c = $val->dept= "abc" or "ABC" 因为 strcasecmp 在我的 comp 中工作正常 ..just echo $val
-
当我执行 echo $val 时会抛出此错误:stdClass 类的对象无法转换为字符串
-
$c 既可以是“abc”也可以是“ABC”
标签: php arrays string laravel-5.2