Php 如何将Laravel中的短if语句转换为长if语句?
我有一个简短的if-else语句,在转换成完整的if-else语句时遇到了困难 原因是我想在里面包含一些html,而不仅仅是文本Php 如何将Laravel中的短if语句转换为长if语句?,php,laravel,laravel-5,laravel-5.2,Php,Laravel,Laravel 5,Laravel 5.2,我有一个简短的if-else语句,在转换成完整的if-else语句时遇到了困难 原因是我想在里面包含一些html,而不仅仅是文本 Auth::user()->likes()->where('status_id', $status->id)->first() ? Auth::user()->likes()->where('status_id', $status->id)->first()->like == 1 ? 'You like this
Auth::user()->likes()->where('status_id', $status->id)->first() ? Auth::user()->likes()->where('status_id', $status->id)->first()->like == 1 ? 'You like this post' : 'Like' : 'Like'
请注意,我是在刀片模板中执行此操作的。它应该转换为:
if(Auth::user()->likes()->where('status_id', $status->id)->first()){
if(Auth::user()->likes()->where('status_id', $status->id)->first()->like == 1){
$var = 'You like this post';
}else{
$var = 'Like';
}
}else{
$var = 'Like';
}
添加了$var
以保存值,没有它就没有多大意义
同样,您可以通过和
if(Auth::user()->likes()->where('status_id', $status->id)->first()
&& Auth::user()->likes()->where('status_id', $status->id)->first()->like == 1){
$if = 'You like this post';
}else{
$if = 'Like';
}
这将返回一个json数组{“id”:39,“user_id”:14,“status_id”:21,“created_at:“2016-07-30 20:49:35”,“updated_at:“2016-07-30 20:49:35”,“like”:1}如果你喜欢这篇文章
@Halnex,你必须在你的问题中提供更多的上下文,否则这将无法帮助你。我是在一个刀片模板中做这件事的,第二个代码段可以工作,但我必须重新加载页面才能查看结果。我想我还需要修改我的javascript,以在不重新加载页面的情况下获得结果。
$likes = Auth::user()->likes()->where('status_id', $status->id)->first();
if ($likes && $likes->like == 1) {
$text = 'You like this post';
}
else {
$text = 'Like';
}