Php 如何将Laravel中的短if语句转换为长if语句?

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

我有一个简短的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 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';
}