如何在 laravel 4 的 Blade.php 模板中使用静态函数?

Posted

技术标签:

【中文标题】如何在 laravel 4 的 Blade.php 模板中使用静态函数?【英文标题】:How do I use a static function in blade.php tempate in laravel 4? 【发布时间】:2013-06-07 18:24:35 【问题描述】:

我有一个类公共静态方法,它获取一些数据库信息并返回一个整数。在控制器中,我可以很好地调用该方法。如何在刀片模板中调用该静态方法?

例如:

@foreach ($tasks as $task)
  Task::percentComplete($task->id)%<br />
@endforeach

谢谢

【问题讨论】:

【参考方案1】:

一种不成熟的方法就是将 php 嵌入到刀片模板中,至少在 Laravel 4.0 中是这样;我将一个写得很糟糕的旧项目迁移到 laravel。我遇到的问题数量和时间限制让我不知所措,我没有时间寻找更好的方法来解决问题。我做了一堆 html 表单,总共大约 30k 行代码。

<?php
 $haystack=Session::get('orderInfo.form.conditions',array());
?>

那么你就可以正常访问你的数据了:

in_array('Special Assignments',$haystack)?'checked="checked"':''

这对我有用。

注意:为了记录,只需加上我的 2 美分。有 正如接受的答案所述,更好、更清洁的方法。

【讨论】:

【参考方案2】:

你也可以

A- 让它成为一个门面:http://laravel.com/docs/facades

B- 将其移动到帮助程序/库中:https://***.com/a/13481218/2446119

我个人认为帮助程序和库更容易和更快地编写代码,但外观更干净。

【讨论】:

这里还有一个不错的资源:@​​987654323@

以上是关于如何在 laravel 4 的 Blade.php 模板中使用静态函数?的主要内容,如果未能解决你的问题,请参考以下文章

在 Laravel 4 / Blade 中将布局分解为部分

在带有 Blade 的 Laravel 4 中看不到内容视图中的变量

Laravel 5.4 - 如何在 javascript 加载之前使 @section 屈服

如何使单选按钮记住用户在edit.blade.php laravel中给出的上一个选项

如何在 Laravel Blade 中使用 Vuejs

Welcome.blade.php 在 laravel 中显示空白