在内核中配置

编辑本页

警告:您正在浏览的文档欧宝官网下载appob娱乐下载Symfony 5.2,现已不再维护。

本页的更新版本用于Syob娱乐下载mfony 6.2(当前稳定版本)。

在内核中配置

一些配置可以在内核类本身上完成(默认位于src / Kernel.php).你可以通过重写父类的特定方法来做到这一点内核类。

配置

在以前的Symfony版ob娱乐下载本中,有另一个配置选项来定义“内核名”,这只在以下情况下才重要使用具有多个内核的应用程序.如果您的内核需要一个唯一的ID,请使用kernel.container_class参数或内核:getContainerClass ()方法。

字符集

类型字符串默认的utf - 8

此选项定义应用程序中使用的字符集。方法公开此值kernel.charset配置参数和getCharset ()方法。

要更改此值,请重写getCharset ()方法,返回另一个字符集:

12 3 4 5 6 7 8 9 10 11 12 13
/ / src / Kernel.php名称空间应用程序使用ob娱乐下载组件HttpKernel内核作为BaseKernel/ /……内核扩展BaseKernel公共函数getCharset()返回“iso - 8859 - 1”;}}

项目目录

类型字符串默认的:工程目录composer.json

这将返回Symfony项目根目录的绝对路径,应用程序将使用它对相对于项目根目录的文件路径执行操作。ob娱乐下载

默认情况下,它的值会自动计算为maincomposer.json文件被保存。方法公开此值kernel.project_dir配置参数和getProjectDir ()方法。

如果您没有使用Composer,或者已经移动了composer.json文件位置或已完全删除它(例如在生产服务器中),则可以重写getProjectDir ()方法返回正确的项目目录:

12 3 4 5 6 7 8 9 10 11 12 13 14 15
/ / src / Kernel.php名称空间应用程序使用ob娱乐下载组件HttpKernel内核作为BaseKernel/ /……内核扩展BaseKernel/ /……公共函数getProjectDir()字符串返回\目录名(__DIR__);}}

缓存目录

类型字符串默认的$ this - > getProjectDir () / var /缓存/ $ this - >环境

这将返回Symfony项目的缓存目录的绝对路径。ob娱乐下载它是根据电流自动计算的环境.数据可以在运行时写入此路径。

方法公开此值kernel.cache_dir配置参数和getCacheDir ()方法。要更改此设置,请重写getCacheDir ()方法返回正确的缓存目录。

建立目录

类型字符串默认的$ this - > getCacheDir ()

5.2

构建目录特性在Symfony 5.2中引入。ob娱乐下载

这将返回Symfony项目的构建目录的绝对路径。ob娱乐下载这个目录可以用来分离只读缓存(即编译后的容器)和读写缓存(即编译后的容器)。缓存池).当应用程序部署在只读文件系统(如Docker容器或AWS Lambda)中时,请指定一个非默认值。

方法公开此值kernel.build_dir配置参数和getBuildDir ()方法。要更改此设置,请重写getBuildDir ()方法返回正确的生成目录。

日志目录

类型字符串默认的$ this - > getProjectDir () / var / log

这将返回Symfony项目日志目录的绝对路径。ob娱乐下载它是根据电流自动计算的环境

方法公开此值kernel.logs_dir配置参数和getLogDir ()方法。要更改此设置,请重写getLogDir ()方法返回正确的日志目录。

容器构建时间

类型字符串默认的:执行结果时间()

ob娱乐下载Symfony遵循可再生的构建哲学,确保编译完全相同的源代码的结果不会产生不同的结果。这有助于检查给定的二进制代码或可执行代码是否从一些可信的源代码编译而来。

在实践中,编译服务容器如果你不改变它的源代码,你的应用程序的代码将总是相同的。这是通过以下配置参数公开的:

  • container.build_hash,所有源文件内容的散列;
  • container.build_time,容器构建时刻的时间戳(执行PHP的时间函数);
  • container.build_id,前两个参数合并后的结果,用CRC32编码。

container.build_time值将在每次编译应用程序时更改,构建将不是严格可复制的。如果您关心这个问题,解决方案是使用另一个名为kernel.container_build_time并将其设置为不变的构建时间,以实现严格的可重复构建:

  • YAML
  • XML
  • PHP
1 2 3 4
#配置/ services.yaml参数:#……kernel.container_build_time:“1234567890”
此工作,包括代码示例,是根据创作共用BY-SA 3.0许可证。