2007 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 09 | 11 |
2010 | 01 |
2011 | 01 | 06 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 09 | 11 |
2010 | 01 |
2011 | 01 | 06 |
2007-11-29
PHPでtrim+全角スペースを取り除く時のベンチマークを取って見た
全角スペースを取り除くのにどっちが早いのかな〜
- 全角スペースを半角にしてからtrim
<?php trim( mb_convert_kana( $hoge, "s"));
- 正規表現で置換
<?php mb_ereg_replace( "^( | |\t|\n|\r|\0|\x0B)*|( | |\t|\n|\r|\0|\x0B)*$", "", $hoge);
ベンチの結果、上の方が早いみたいっす。。。
詳細は以下より
書いたソース
<?php $hoge = " \t \n 適当な文字列 \t \t\n"; print 'trim+mb_convert_kana<br/>'; $start_time = microtime(true); for( $i = 0; $i <= 200000; $i++) { trim( mb_convert_kana( $hoge, "s")); } $end_time = microtime( true); $time = $end_time - $start_time; print " {$time}ミリ秒"; print "<br/>----------------------------------<br/>"; print 'mb_ereg_replace<br/>'; $start_time = microtime( true); for( $i = 0; $i <= 200000; $i++) { mb_ereg_replace( "^( | |\t|\n|\r|\0|\x0B)*|( | |\t|\n|\r|\0|\x0B)*$", "", $hoge); } $end_time = microtime( true); $time = $end_time - $start_time; print " {$time}ミリ秒"; print "<br/>----------------------------------<br/>";
実験環境1
- 1回目
trim + mb_convert_kana 9.2487151622772ミリ秒 ---------------------------------- mb_ereg_replace 15.671895027161ミリ秒 ----------------------------------
- 2回目
trim + mb_convert_kana 9.3685929775238ミリ秒 ---------------------------------- mb_ereg_replace 15.768704891205ミリ秒 ----------------------------------
- 3回目
trim + mb_convert_kana 9.2497129440308ミリ秒 ---------------------------------- mb_ereg_replace 15.544082164764ミリ秒 ----------------------------------
実験環境2
- 1回目
trim + mb_convert_kana 0.711861133575ミリ秒 ---------------------------------- mb_ereg_replace 4.96990203857ミリ秒 ----------------------------------
- 2回目
trim + mb_convert_kana 0.724739789963ミリ秒 ---------------------------------- mb_ereg_replace 5.06015396118ミリ秒 ----------------------------------
- 3回目
trim + mb_convert_kana 0.693895101547ミリ秒 ---------------------------------- mb_ereg_replace 5.03003406525ミリ秒 ----------------------------------
実験環境3
- 1回目
trim + mb_convert_kana 0.491611003876ミリ秒 ---------------------------------- mb_ereg_replace 1.36231207848ミリ秒 ---------------------------------- >|| - 2回目 >|| trim + mb_convert_kana 0.467578172684ミリ秒 ---------------------------------- mb_ereg_replace 1.30224108696ミリ秒 ----------------------------------
- 3回目
trim + mb_convert_kana 0.46227312088ミリ秒 ---------------------------------- mb_ereg_replace 1.33242917061ミリ秒 ----------------------------------
蛇足
ぶちゃけると正規表現を出したのが僕で、もう一方を同僚が出したのなんですが。。。。
- メッセにて
・・・(ベンチの結果を報告)
cos31 の発言:
完全に負けた。。。orz
同僚@trimし忘れた の発言:
ごめん無駄にうれしい。ありがとうw
cos31 の発言:
正規表現好きとしては悲しくて仕方がない。。。。
同僚@trimし忘れた の発言:
ごめんwww
すごい顔笑ってるけど、ごめんw
すげーバカにされてます・゚・(ノ∀`)・゚・。
トラックバック - http://d.hatena.ne.jp/cos31/20071129/1196321583
リンク元
- 7 http://www.google.co.jp/search?sourceid=navclient&hl=ja&ie=UTF-8&rls=GGLG,GGLG:2005-51,GGLG:ja&q=mysql+create+table+構造
- 6 http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&q=ファイル一覧+PHP+取得&num=50
- 5 http://www.google.co.jp/search?hl=ja&client=firefox&rls=org.mozilla:ja:official&hs=sCM&q=ajax+ファイル一覧&btnG=検索&lr=lang_ja
- 4 http://www.google.co.jp/search?q=FireBug+Lite&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja:official&client=firefox
- 4 http://www.google.co.jp/search?q=php+ディレクトリ+検索 readdir&sourceid=navclient-ff&ie=UTF-8&rlz=1B3GGGL_jaJP227JP227
- 3 http://www.google.co.jp/search?hl=ja&client=firefox-a&rls=org.mozilla:ja-JP:official&q=ディレクトリ内のファイル表示+php&btnG=検索&lr=
- 3 http://www.google.co.jp/search?sourceid=navclient&aq=t&hl=ja&ie=UTF-8&rls=GGLG,GGLG:2005-46,GGLG:ja&q=PHP+ディレクトリ+一覧
- 2 http://search.nifty.com/cgi-bin/search.cgi?cflg=検索&select=2&chartype=&Text=javascript+ディレクトリ ファイル名+取得&as_w=a&ck=assist
- 2 http://search.yahoo.co.jp/search?p=ディレクトリ内ファイル検索&fr=top_v2&tid=top_v2&ei=euc-jp&search.x=1&x=37&y=19
- 2 http://search.yahoo.co.jp/search?p=php+テスト+結果+表示&ei=UTF-8&fl=0&pstart=1&fr=top_beta&b=21


