`
禹爸爸
  • 浏览: 79927 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

CodeIgniter类库之Benchmarking Class

    博客分类:
  • PHP
 
阅读更多

CodeIgniter中有个Benchmarking类库,它是被系统自动被加载的,不需要手工加载。Benchmarking类库能够计算出任意两个被标记点之间的代码执行时间。通过这个数值,可以评估程序员编写的程序的效率。

另外,当CodeIgniter框架被调用时,系统会调用Benchmark类库中的方法,以计算出Output类库将所有内容正确的发送至浏览器所执行的时间。

可以在我们自己编写的模型(Model)、视图(View)和控件器(Controller)中通过以下三步使用Benchmark:

  1. 标记起始点
  2. 标记结束点
  3. 调用elapsed_time方法显示结果

下面就是使用示例

$this->benchmark->mark('code_start');
//Somecodehappenshere
$this->benchmark->mark('code_end');
echo$this->benchmark->elapsed_time('code_start','code_end');

我们可以任意代码行做标记,并通过elapsed_time方法计算任两个标记点之间的代码执行时间。

$this->benchmark->mark('dog');
//Somecodehappenshere
$this->benchmark->mark('cat');
//Morecodehappenshere
$this->benchmark->mark('bird');
echo$this->benchmark->elapsed_time('dog','cat');
echo$this->benchmark->elapsed_time('cat','bird');
echo$this->benchmark->elapsed_time('dog','bird');

若希望显示从框架被加载到所有内容被正确发送至浏览器中所消耗的时间,可以在你的视图文件(View)中加入如下语句,这个语句只能在视图文件(View)中使用。

<?phpecho$this->benchmark->elapsed_time();?>

这句代码和我们在之前的示例中使用的是同一个方法,只不过是没有参数。如果你的视图是使用HTML和PHP混合编写的,你还可以通过使用模板标记来显示结果

{elapsed_time}

我们还可以在自己编写的视图中使用另一个模板标记来显示内存的使用信息

{memory_usage}

PS:上面提到的{elapsed_time}和{memroy_usage}标记只能在视图文件(View)中使用。

版权声明:本文为博主原创文章,未经博主允许不得转载。

分享到:
评论

相关推荐

    codeigniter 的模板类库及日志类库

    codeigniter 的模板类库及日志类库 codeigniter 的模板类库及日志类库 codeigniter 的模板类库及日志类库 英文的

    CodeIgniter辅助函数和类库的使用

    Codeigniter常用类库及辅助函数的使用

    codeigniter_1.7.1_类库

    提供codeigniter_1.7.1_类库供广大的CI学习或开发者参考。

    【共享】codeigniter配置类库

    NULL 博文链接:https://baiyuxiong.iteye.com/blog/935817

    codeigniter日志类库

    NULL 博文链接:https://baiyuxiong.iteye.com/blog/865478

    PHP基于Codeigniter第三方登录类库

    / Codeigniter的oauth登录类库 Following sites supported: china/国内网站: 163登录 奇虎360登录 豆瓣登录 QQ登录 人人登录 新浪微博登录 English/国外 bitbucket dropbox facebook flickr google linkedin ...

    CodeIgniter辅助之第三方类库third_party用法分析

    主要介绍了CodeIgniter辅助之第三方类库third_party用法,以CI集成Twig模版为例分析了CodeIgniter集成第三方类库的实现步骤与相关技巧,需要的朋友可以参考下

    Codeigniter无限分类类库

    NULL 博文链接:https://baiyuxiong.iteye.com/blog/815247

    PHP框架之CodeIgniter留言板实例

    PHP框架之CodeIgniter留言板实例PHP框架之CodeIgniter留言板实例PHP框架之CodeIgniter留言板实例PHP框架之CodeIgniter留言板实例PHP框架之CodeIgniter留言板实例PHP框架之CodeIgniter留言板实例PHP框架之CodeIgniter...

    使用CodeIgniter的类库做图片上传

    CodeIgniter的文件上传类允许文件被上传。您可以设置指定上传某类型的文件及指定大小的文件。这篇文章主要介绍了使用CodeIgniter的类库做图片上传,需要的朋友可以参考下

    CodeIgniter框架验证码类库文件与用法示例

    主要介绍了CodeIgniter框架验证码类库文件与用法,结合实例形式分析了CodeIgniter框架验证码类库文件的定义与具体使用方法,具有一定参考借鉴价值,需要的朋友可以参考下

    Codeigniter一级分类类库

    NULL 博文链接:https://baiyuxiong.iteye.com/blog/949243

    Codeigniter整合Tank Auth权限类库详解

    相交其他CodeIgniter的类库,tank_auth,配置简单,使用也简单,并且作者也一直在更新,现在是1.0.9。1.0.8已经支持CI2.0了,我现在一般的项目都是用它,所以推荐给大家。 安装Tankauth的步骤 下载最新版类库(下载...

    PHP各大网站登录类库.zip

    / Codeigniter的oauth登录类库 Following sites supported: china/国内网站: 163登录 奇虎360登录 豆瓣登录 QQ登录 人人登录 新浪微博登录 English/国外 bitbucket dropbox facebook flickr ...

    codeigniter分页类的使用

    codeigniter分页类的使用 Codeigniter 分页类的使用 对于codeigniter框架分页类的使用非常的简单,下面通过一个实例来讲解一下这个分类的使用。 首先分页要设计到一个数据库中的记录,所以先建立一个数据表books,...

Global site tag (gtag.js) - Google Analytics