1

我有一个关于明确声明 $helper 的问题。这是来自 CakePHP Book 的示例代码。

<?php
class PostsController extends AppController {
    public $helpers = array('Html', 'Form');

    ..
}

在我的代码中,我根本没有那个声明,但我的应用程序仍在运行,我可以通过我的网络表单保存数据,我也可以使用 $this->Html->link()。

我真的需要那个声明吗,如果我不需要,会有什么缺点吗?

谢谢大家。

4

1 回答 1

1

$helpers仅当您使用“HTML”和“Form”以外的 Helper 时才需要声明该变量。核心助手 'Html' 和 'Form' 默认加载到$helpers数组中,因此如果您只打算使用它们,则不需要声明。

如果要添加自定义助手或使用任何其他核心助手,则必须声明$helpers数组。执行此操作时,您将覆盖默认帮助器数组,因此如果您仍打算使用它们,则需要确保再次包含默认值。

// Default. You do not need to declare this if you 
// only intend to use these helpers.
$helpers = array('HTML', 'Form'); 

// Add 'CustomHelper' to $helpers array. In this case
// HTML and Form must be declared.
$helpers = array('HTML', 'Form', 'Custom');
于 2012-10-14T12:48:06.027 回答