我已经看到了很多关于Devel模块中的kint()如何很难使用的讨论,因为它极大地限制了PHP内存并使浏览器拖动。我听到了一些关于通过限制等级的数量来提高速度的想法。例如,在settings.php中,您可以执行以下操作:
require_once DRUPAL_ROOT . '/modules/contrib/devel/kint/kint/Kint.class.php';
Kint::$maxLevels = 3;还有其他方法来提高kint()的速度吗?
发布于 2016-09-12 19:26:38
Kint并不是唯一一个可以用来解压变量和twig模板的库。
我建议使用塞福尼,IMHO是调试变量的最强大的库之一。Symfony var-dumper与最新版本的devel模块集成(请参阅devel问题队列添加一个基本的symfony var-dumper集成中的这个问题)。
与devel一起使用var-dumper
composer require symfony/var-dumper)安装var-dumper{{ devel_dump() }}、{{ kpr() }}或{{ dpm() }}而不是{{ kint() }来调试变量发布于 2020-04-08 23:42:31
FYI,从Devel v3开始,如果使用@chrisshattuck建议的top方法,您需要进行两次更新
admin/config/development/devel?q=/admin/config/development/develsettings.local.php并更新max_depth变量。 include_once(DRUPAL_ROOT . './../vendor/kint-php/kint/src/Kint.php');
if (class_exists('Kint')) {
Kint::$max_depth = 4;
} 发布于 2016-08-19 02:47:56
以下是另一条建议:
与使用将返回所有内容的{{ kint() }}不同,您可以通过传递所需的变量来进行更具体的操作;因此,它将加载得更快。
例如:在节点--类型.html.twig中,可以将内容变量传递给kint:
{{ kint(content) }}
如果您知道该字段的名称,则可以更加具体:
{{ kint(content.field_name['#items'].getValue()) }}这将只返回字段名的值(S)。
https://drupal.stackexchange.com/questions/211928
复制相似问题