ちょっとしたブラウザー上のエディターを作ろうと思った時に入力補完をしたいと考えたんですが、
そこから優先順位とかも含めて「どの関数をどれくらいの比率で使っているんだろうか…?」と思ったので簡単に集計してみた。
手近にあったリファレンスからよく使う関数と作りかけのプログラムをちょっと眺めて50~60前後をピックアップしてみた。
//取得ファイル名
$target = file('target.txt');
// 集計
$count = count($target);
for( $i = 0; $i < $count; $i++ )
{
if( pregmatch('/htmlspecialchars|return|isset|(^if|\tif)|for|while|foreach|pregmatch|pregreplace|strlen|substr|base64encode|base64decode|mbconvertencoding|isdir|mkdir|moveuploadedfile|count|file|filesize|fileexists|md5|GET|POST|SERVER|date|strtotime|urldecode|urlencode|sort|arsort|natsort|strstr|time|unset|fileputcontents|filegetcontents|copy|unlink|readdir|while|exit|header|setcookie|rand|mtrand|define|gettype|settype|explode|implode|update|delete|insert|select|errorlog|errorreporting|mbstrlen|arrayunique|PDO/', $target[$i], $match) )
{
$functioncount[$match['0']]++;
}
}
// 結果表示
natsort($functioncount);
foreach( $functioncount as $val => $num )
{
echo $num . " - " . $val . "<br />";
}
1 - return
1 - file
1 - pregreplace
2 - while
2 - header
4 - POST
4 - count
4 - substr
6 - for
15 - pregmatch
46 - if
1 - pregreplace
1 - mkdir
1 - base64decode
1 - isset
2 - strlen
2 - rand
2 - mbconvertencoding
3 - copy
3 - SERVER
3 - POST
3 - GET
4 - unlink
4 - substr
5 - base64encode
5 - htmlspecialchars
8 - for
11 - header
20 - time
25 - return
39 - file
41 - if
1 - base64decode
1 - base64encode
1 - arrayunique
1 - define
1 - arsort
1 - htmlspecialchars
2 - explode
2 - GET
2 - POST
2 - strlen
2 - rand
2 - if
3 - md5
3 - exit
3 - setcookie
3 - mtrand
3 - copy
4 - substr
5 - select
5 - sort
6 - SERVER
7 - isset
8 - mbconvertencoding
9 - pregmatch
10 - file
17 - insert
18 - pregreplace
18 - while
20 - count
25 - header
39 - date
45 - delete
46 - update
48 - PDO
57 - for
69 - time
103 - return
183 - if
関連記事