PHP封装类效率测试
今天刚学完mysqli,去我的IDC运营商那看了一下,发现他们的虚拟主机居然不支持,我又去其他几家看了看,有的支持有的不支持。
我就想自己写个类,让他去判断,能用mysqli就用mysqli,否则就用原始的mysql函数。不过问题马上就来了,自己写类会不会导致执行效率变低了呢?于是我就进行了如下测试。
这是用来计时的类:
/**
* 计算代码执行时间
* $counting : 当前的计时状态
* $startTime : 开始计时的时间
* $totalTime : 代码执行的用时
* getTime() : 取得当前时间(以微秒为单位)
* start() : 开始计时
* show() : 显示执行代码的用时
*
*/
class Counter
{
private $counting;
private $startTime;
private $totalTime;
function __construct(){
$this->start();
}
private function getTime(){
list($msec,$sec) = explode(' ',microtime());
return $sec+$msec;
}
function start(){
$this->counting = TRUE;
$this->startTime = $this->getTime();
}
function stop(){
$this->counting = FALSE;
$this->totalTime = ($this->getTime() - $this->startTime)*1000000;
}
function show(){
$this->counting == TRUE && $this->stop();
echo "<br>耗时:".$this->totalTime." 微秒<br>";
$this->start();
}
}
这是执行的代码1:
class Myobj
{
function myf($str){
preg_match('/456/',$str);
}
}
$obj = new Myobj();
$str = '123456789';
$counter = new Counter();
for($i=0;$i<10000;$i++){
$obj->myf($str);
}
$counter->show();
测试五次用的时间分别为:
15283
15861
15658
15663
16229
这是执行的代码2(直接调用函数,不用自己的类):
$str = '123456789';
$counter = new Counter();
for($i=0;$i<10000;$i++){
preg_match('/456/',$str);
}
$counter->show();
测试五次用的时间分别为:
9087
9501
9026
9413
9989
可见,直接调用函数比调用自己封装的函数快了5000微秒左右,乍一看,好像挺吓人的,可仔细一想,5000微秒==5毫秒==0.005秒,而且我整整调用了10000次,这么点差距,肯定没
相关文档:
1.1
exit() 函数输出一条消息,并退出当前脚本。
如果 status
是字符串,则该函数会在退出前输出字符串。
如果 status
是整数,这个值会被用作退出状态。退出状态的值在 0 至 254 之间。退出状态 255 由 PHP 保留,不会被使用。状态 0 用于成功地终止程序。
1.2
301 Moved Permanently 客户请求的文档在其他地方, ......
1、一般页面通过GET接收的参数都是INT型(整型)居多,但是要防范一些不规范的输入,接收时用整型函数转换一下
$id=intval($_GET["id"]);
2、有上传功能时,一定要检查文件类型。不能任意由访客上载所有文件。(特别要注意一些HTML编辑器的漏洞)
3 ......
语法: boolean session_register(string name);
注册新的变量。
返回值: 布尔值
函数种类: 资料处理
内容说明
本函数在全域变量中增加一个变量到目前的 Session 之中。参数 name 即为欲加入的变量名。成功则返回 true 值。
假如在头文件,开启session,即使用session_start()函数后面加上session_register(string na ......
例子. return() 函数的用法
<?php
function square ($num)
{
return $num * $num;
}
echo square (4); // outputs '16'.
?>
函数不能返回多个值,但为了获得简单的结果,可以返回一个列表。
例子. 返回一个数组以得到多个返回值
<?php
function small_numbe ......
转自:http://www.w3school.com.cn/php/func_string_substr.asp
PHP substr() 函数
PHP String 函数
定义和用法
substr() 函数返回字符串的一部分。
语法
substr(string,start,length)
参数描述
string
必需。规定要返回其中一部分的字符串。
start
必需。规定在字符串的何处开始。
正数 - 在字符串的指定位置开 ......