Php 什么';在Kohana 3中,为饼干加盐的正确方法是什么?

Php 什么';在Kohana 3中,为饼干加盐的正确方法是什么?,php,cookies,kohana,kohana-3,salt,Php,Cookies,Kohana,Kohana 3,Salt,我可以直接进入Kohana_Cookie课程,然后开始 public static $salt = 'blah'; 但这似乎不是一个非常优雅的解决方案。。。有没有一种方法可以在配置中设置它?尝试在Google上四处搜索,但没有成功…可以通过在应用程序/类中创建一个cookie.php文件来完成,该文件包含以下内容: class Cookie extends Kohana_Cookie { public static $salt = 'foobar'; } // End Cookie

我可以直接进入Kohana_Cookie课程,然后开始

public static $salt = 'blah';

但这似乎不是一个非常优雅的解决方案。。。有没有一种方法可以在配置中设置它?尝试在Google上四处搜索,但没有成功…

可以通过在
应用程序/类中创建一个
cookie.php
文件来完成,该文件包含以下内容:

class Cookie extends Kohana_Cookie
{
    public static $salt = 'foobar';
} // End Cookie

不过,我建议使用下面的zombor方法。

或者在引导中设置它:

Cookie::$salt = 'foobar';
或者像@davot那样扩展cookie类


不要修改系统文件夹中的代码。从来没有必要这么做。

现在我不知道该用哪种方法。。。哈哈。。。不过谢谢你。。。我给了另一个人答案,因为他是第一个,但我不介意如果有人插话,如果这是更标准的方法做这件事。。。不想让其他人走错路。。。我应该把这个问题作为答案还是保持原样…?Jeremy(@zombor)是Kohana团队的开发人员之一,他提出了一个非常好的观点,你不应该编辑任何Kohana系统文件。当你能像我的回答那样扩展它们的时候就不行了。在这种情况下,我首选的方法是扩展类。然而,正如Jeremy所说,如果需要,也可以通过编辑bootstrap.php来解决这个问题。这两种方法都同样好。只是不要编辑你的系统文件。扩展应用程序文件夹中的类。只在引导程序中设置它“更容易”,因为您不必执行类继承,但它们都很好。我最后在config/session.php中的return()前面放了一行,这是一个无论如何都需要咸cookie的模块。看起来更干净。@vee在I18n::lang之后写“大多数人”不会这样做。您需要在引导中设置它。