0°

WordPress 显示数据库查询次数、查询时间及内存占用的代码

1218 个字符,0 张图片,大约需要 2 分钟阅读

一、在页面前台显示数据库查询次数、查询时间

将下面的代码丢入主题的footer.php 的<? php wp_footer(); ?>前:

<p>< ?php echo get_num_queries(); ?> queries in < ?php timer_stop(3); ?> seconds</p>

二、在html 源代码下显示数据库查询次数、查询时间

如果只是给自己看的,最好是在html 源代码下显示,很简单。就是将它变为html 注释,上面的代码修改为:

<!-- <?php echo get_num_queries(); ?> queries in < ?php timer_stop(3); ?> seconds -->

三、统计信息只有管理员登录了后可以看到

用if 判断是否登陆,上面的代码改为:

<?php if (current_user_can('level_10')) {
	echo '<!-- ' . get_num_queries() . ' queries in ' . timer_stop(3) . ' seconds -->';
} ?>

想必都知道了:<?php echo get_num_queries(); ?>输出查询数量, <?php timer_stop(1); ?>输出查询时间;

经过测试,其实可以通过 <?php echo memory_get_peak_usage(); ?> 输出内存占用,但是单位是B(字节),不知道如何实现自动转化。下面的代码可能会好一些。

四、通过自定义函数在html 源代码下显示

需要在主题的functions.php 文件下加入以下代码定义函数并自动显示:

function performance( $visible = false ) {
    $stat = sprintf(  '%d queries in %.3f seconds, using %.2fMB memory',
        get_num_queries(),
        timer_stop( 0, 3 ),
        memory_get_peak_usage() / 1024 / 1024
        );
    echo $visible ? $stat : "<!-- {$stat} -->" ;
}
add_action( 'wp_footer', 'performance', 20 );

对应的如果你的查询次数过多,可以通过对象缓存来解决

像memcache、redis

不会安装的可以加我qq:1720346159

除非注明,否则均为喵喵喵博客原创文章,转载请以链接形式标明本文地址

本文链接:https://www.miaomiaomiao.org/199.html

0 条回复 A 作者 M 管理员
    当上帝赐给你荒野时,就意味着,他要你成为高飞的鹰
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论