php - Laravel : Calling functions defined in base_controller from view

标签 php laravel static-classes

在使用 laravel 框架时,如何在 View 中调用 base_controller 中定义的函数。例如:

class Base_Controller extends Controller {

    public static function format_something()
    {
         return something;
    }
}

如何在 View 文件中调用 format_something()?

通常我得到的错误看起来像这样: 方法 [link_to_action] 未在 View 类上定义。

可能是个愚蠢的问题,但在此先感谢!

编辑

好的!首先,执行此类操作的正确位置是在库文件夹中。 其次,问题是你的类(class)不能有下划线。

所以在应用程序/库中我用类创建了文件 AppHelper.php

class AppHelper {

    public static function format_something()
    {
        return something;
    }
}

可以这样调用它:

$formated = AppHelper::format_something;

感谢您的帮助和找到 Boofus McGoofus 的好论坛。

最佳答案

对我来说正在工作:

创建目录“helpers”或其他目录和文件:

// app/helpers/AppHelper.php

class AppHelper {

    public static function format_something()
    {
        return something;
    }
}

添加 composer.json 的路径

// composer.json

    "autoload": {
        "classmap": [
                    "app/helpers"   // <-------- add this line
        ]
    },

运行:(重新加载自动加载)

composer dump-autoload

现在你可以调用:

$formated = AppHelper::format_something();

关于php - Laravel : Calling functions defined in base_controller from view,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13481136/

相关文章:

php - Laravel 日志级别,有何不同?

php - 如何独立显示数据库表中的数据

php - htaccess 重写 url 规则故障检测 $_GET isset

php - Laravel Eloquent ORM 返回 stdClass 而不是 Model 实例

java - Spring 状态机 - 为什么文档使用静态类

php - 流量大怎么会导致 "The session id is too long or contains illegal characters"

mysql - 如何在 nginx 服务器中启用 MIME。 (本地)

php - 属于through方法

java - 首次运行时 Android 静态类为 null

C# 静态类与预定义字符串的结构