【发布时间】:2013-11-13 08:06:02
【问题描述】:
我在 Laravel 4 中通过 Composer 使用 Kint,方法是首先在 composer.json 中加载 kint,以便 dd() 由 kint 定义,而不是 laravel(建议 here)。
我想在我的应用程序中保留调试调用,如果不在本地环境中,则禁用 Kint。我使用以下结构成功地使用了 Anvard 的配置覆盖:
/app/config/local/packages/provider/package_name/overridefile.php
很遗憾,这不适用于具有以下结构的 Kint:
/app/config/packages/raveren/kint/local/config.php 或
/app/config/packages/raveren/kint/local/config.default.php
您可以选择复制包含的 config.default.php 并重命名为 config.php 以覆盖默认值...
…这对我有用 (/vendor/raveren/kint/config.php)
我如何做到这一点:
- 不编辑 /vendor/ 目录中将被 composer 覆盖的文件
- 只在本地环境中启用kint
我还尝试将以下内容添加到 helpers.php 文件中,该文件在 /bootstrap/autoload.php 中的 composer 之前调用,如建议 here:
<?php
isset( $GLOBALS['_kint_settings'] ) or $GLOBALS['_kint_settings'] = array();
$_kintSettings = &$GLOBALS['_kint_settings'];
/** @var bool if set to false, kint will become silent, same as Kint::enabled(false) or Kint::$enabled = false */
$_kintSettings['enabled'] = false;
unset( $_kintSettings );
(但没有骰子:)
有什么建议吗?蒂亚!
【问题讨论】:
-
这里是 Kint 的作者,感谢您的尝试,希望对您有所帮助。我正在积极研究和计划重新安排设置位置以使作曲家用户的生活更轻松,但我还没有明确的解决方案:stackoverflow.com/q/18751125/179104
-
嗨@Raveren!我认为 Laravel 会寻找 /Vendor/Raveren/Kint/src/config/config.php 作为替代。也许 Kint 也可以在那里检查?
php artisan publish:raveren/kint将配置覆盖文件复制到正确的位置... -
我在这里创建了一个问题:github.com/raveren/kint/issues/94,我会在时间允许的时候调查这种情况,感谢您的贡献! :)