memo.xight.org

ctype と is_* , str_* の処理速度比較

ctype と is_* , str_* の処理速度比較

- Summary
ctype関数はCライブラリを使用しているため,is_*, str_*より高速とのこと.
だが実際に比較してみると,is_* の方が速い.

- ctype_digit 版
$t = microtime_float();
for($i=1;$i<=1000000;$i++){
	if(ctype_digit(1234567890)) {
		print "";
	}
}
print microtime_float()-$t."\n";
 
function microtime_float() {
	list($usec, $sec) = explode(" ", microtime());
	return ((float)$usec + (float)$sec);
}


- is_int 版
$t=microtime_float();
for($i=1;$i<=1000000;$i++){
	if(is_int(1234567890)) {
		print "";
	}
}
print microtime_float()-$t."\n";
 
function microtime_float() {
	list($usec, $sec) = explode(" ", microtime());
	return ((float)$usec + (float)$sec);
}


- Reference
1人で稼ぐ日記 - 2006-05-02 - [PHP]ctypeとis_num
http://kokoromo.jugem.cc/?eid=210

microtime
http://php.s3.to/man/function.microtime.html