Yii2 在Yii中向哪个文件夹添加自定义助手函数

Yii2 在Yii中向哪个文件夹添加自定义助手函数,yii2,Yii2,我试图在Yii2中创建一个助手函数。要将PHP文件添加到哪个文件夹以在Yi2中创建自定义帮助器函数,以及如何在控制器中使用它?例如,models->helpers->SomeHelper.PHP 在您的控制器中,此帮助程序将像\models\helpers\SomeHelper.php一样访问,您可以将其放在components文件夹中。然后使用名称空间访问它。比如说 use app\components\Helper; 在你的代码里 Helper::something(); 使助手函数成为

我试图在Yii2中创建一个助手函数。要将PHP文件添加到哪个文件夹以在Yi2中创建自定义帮助器函数,以及如何在控制器中使用它?

例如,
models->helpers->SomeHelper.PHP

在您的控制器中,此帮助程序将像
\models\helpers\SomeHelper.php

一样访问,您可以将其放在components文件夹中。然后使用名称空间访问它。比如说

use app\components\Helper;
在你的代码里

Helper::something();

使助手函数成为静态函数。

要创建一些静态助手,请执行以下操作(这些说明适用于“高级Yii2模板”)。 在
common
下创建一个名为
components
的文件夹。在其中创建一个名为:
MyHelpers
(filename
MyHelpers.php
)的类


basic template中没有名为components的文件夹。所以我只是在app中创建了一个名为helpers的文件夹,并按照您的方式进行了操作。您知道了吗?是的,按照您希望的方式进行操作。@MihaiP。回答得好,为什么这些方法应该是静态的。我只想写一些我自己的,不知道您为什么这么说?@J不必如此。它们可以是你想要/需要的任何形式。@MihaiP在这种情况下,它们是静态的,有什么优点和缺点?
<?php
namespace common\components;
// namespace app\components; // For Yii2 Basic (app folder won't actually exist)
class MyHelpers
{
    public static function hello($name) {
        return "Hello $name";
    }
}