1
我是Laravel/MVC的新手,所以很抱歉如果这是一个愚蠢的问题。我正在迁移一个传统的程序性应用程序,并试图将“标题,城市,州,国家”的单独数据库行(通过Eloquent模型提取)作为逗号分隔值进行回显。Laravel Blade模板条件格式化
我目前使用的刀片模板看起来像这样,它功能强大但很可怕。
@foreach ($projects as $projects)
{{ $projects->title}}{{ $projects->city? ', '.$projects->city : ""}}{{ $projects->state? ', '.$projects->state : "" }}{{ $projects->country? ', '.$projects->country : "" }}
@endforeach
有没有更好的方法来做到这一点?传统的程序代码将它推到一个数组并像下面那样使它崩溃,但是如果我做了一个数组push/implode,我不太确定它是否属于Eloquent模型或控制器。
$tempArray = array();
if($row["city"]) array_push($tempArray, convert_text($row["city"]));
if($row["state"]) array_push($tempArray, convert_text($row["state"]));
if($row["country"]) array_push($tempArray, convert_text($row["country"]));
echo implode(", ", $tempArray);
echo (count($tempArray) > 0)?", ":"";
即将对空串问题发表评论,但我看到您已更新。非常感谢你,像魅力一样工作,比我提出的所有解决方案都更加优雅。谢谢! – nephenee245
不客气!请注意,我只是进行了另一次更新,这也为您提供了所需顺序的属性,并且代码更简单。 –