注意:本节内容正在开发中。
Yii 提供了许多类来帮助简化常见的编码任务,例如字符串或数组操作、HTML 代码生成等等。这些助手类都组织在 yii\helpers
命名空间下,并且都是静态类(这意味着它们只包含静态属性和方法,不应该被实例化)。
您可以通过直接调用其静态方法来使用助手类,如下所示
use yii\helpers\Html;
echo Html::encode('Test > test');
注意:为了支持自定义助手类,Yii 将每个核心助手类分解成两个类:一个基类(例如
BaseArrayHelper
)和一个具体类(例如ArrayHelper
)。当您使用助手时,您应该只使用具体版本,永远不要使用基类。
Yii 版本中提供了以下核心助手类
要自定义核心助手类(例如 yii\helpers\ArrayHelper),您应该创建一个新的类,继承自助手对应的基类(例如 yii\helpers\BaseArrayHelper),并将您的类命名为与对应的具体类(例如 yii\helpers\ArrayHelper)相同,包括其命名空间。然后,将此类设置为替换框架中原始实现。
以下示例显示了如何自定义 merge() 方法 yii\helpers\ArrayHelper 类
<?php
namespace yii\helpers;
class ArrayHelper extends BaseArrayHelper
{
public static function merge($a, $b)
{
// your custom implementation
}
}
将您的类保存在名为 ArrayHelper.php
的文件中。该文件可以位于任何目录中,例如 @app/components
。
接下来,在您的应用程序的 入口脚本 中,在包含 yii.php
文件后添加以下代码行,以告知 Yii 类自动加载器 加载您的自定义类,而不是框架中的原始助手类
Yii::$classMap['yii\helpers\ArrayHelper'] = '@app/components/ArrayHelper.php';
请注意,自定义助手类只有在您想要更改助手现有函数的行为时才有用。如果您想添加其他函数以在您的应用程序中使用,您可能最好为此创建一个单独的助手。
发现错别字或您认为此页面需要改进?
在 github 上编辑它 !
注册 或 登录 以发表评论。