typo3 - 从控制器更改 TYPO3 中的全局变量
问题描述
在 TYPO3 CMS 中,如果您想更改日志的保存位置,您需要更改$GLOBALS['TYPO3_CONF_VARS']['LOG']['writerConfiguration']
并添加您的文件位置。好吧,我正在开发一个允许用户更改此行为的扩展,但问题是我无法在运行时更改它。我的意思是,如果我写:
$GLOBALS['TYPO3_CONF_VARS']['LOG']['writerConfiguration'] = "some thing new'
在调试时,我可以看到它在 $GLOBALS 中发生了变化,但在配置后记中不会发生变化。我记得那里有一个用于更改/添加新配置的功能,但我找不到它。任何人都可以帮忙吗?
我正在使用 TYPO3 CMS v9.5.5
解决方案
我猜你在找
TYPO3\CMS\Core\Configuration\ConfigurationManager::updateLocalConfiguration()
?
/**
* Override local configuration with new values.
*
* @param array $configurationToMerge Override configuration array
*/
它可以按如下方式使用:
<?php
$objectManager = GeneralUtility::makeInstance(ObjectManager::class);
$configurationManager = $objectManager->get(ConfigurationManagerInterface::class);
$configurationManager->updateLocalConfiguration('...');
推荐阅读
- python - 当任务返回 kwargs 时,气流因 TypeError “无法腌制模块对象”而下降
- javascript - 人们如何将函数传递给 OpenGL ES GLSL 函数?
- termux - Termux 说“'错误的解释器:没有这样的文件或目录”
- jquery - 我无法使用 jquery 隐藏 div 元素吗?
- django - Django 消息 + Pinax
- tkinter - 为什么菜单没有出现在窗口中?
- html - 在 VueJS 组件中呈现电子邮件 HTML,而不影响全局样式
- css - Web Scraping - 在安全站点上使用功能 (rvest)
- node.js - 使用 node/express/mongo app 和 typescript 持续部署
- django - 为什么 django 在最后添加一个额外的斜杠 /,我想删除它?