Php if else在laravel中返回错误的值
请帮我纠正我的错误。下面是我的代码,当时区是英国,它会打印其他部分,为什么真的不明白Php if else在laravel中返回错误的值,php,laravel,Php,Laravel,请帮我纠正我的错误。下面是我的代码,当时区是英国,它会打印其他部分,为什么真的不明白 $user = User::find(BaseHelper::getCurrentUser()); if($user->timezone ='UK') { $date = Carbon::createFromFormat('Y-m-d H:i:s', $this->updated, 'GMT'); $date->timezone("Europe/London
$user = User::find(BaseHelper::getCurrentUser());
if($user->timezone ='UK')
{
$date = Carbon::createFromFormat('Y-m-d H:i:s', $this->updated, 'GMT');
$date->timezone("Europe/London");
} else {
$date = Carbon::parse($this->updated)->format('d/m/Y h:i A');
}
您在这里使用的是if($user->timezone='UK')
equal,此时您应该使用=
=
用于赋值,=
用于比较值
if($user->timezone ='UK')
不会返回true,因为该值已成功存储在变量中。您需要将此
if($user->timezone='UK')
更改为此if($user->timezone==“UK”)
。这将检查$user->timezone
是否等于UK
如果试图将
$user->timezone
的值设置为UK
,则需要使用=
,否则需要使用=
或=
$a=$b
- 将
值设置为$a
$b
$a==b
- 相等为真:如果
等于$a
,则在键入杂耍之后$b
$a===$b
- 相同为真:如果
等于$a
,并且它们属于相同类型$b
时区
的值是否等于UK
是,当时区可用时,转储显示为UK,否则为空。您现在使用的是=
还是==
?