あなたは表示速度が「速い」サイトと「遅い」サイト、どちらがいいですか?
「速い」サイトの方がいいですよね!
「速い」サイトは「速くする」関数の使い方が上手です。
PHPのベンチマーク(いろいろな関数の速度を調べられる)サイトを紹介します!
試せることはたくさんあります。
以下に例を示します。
例1.arrays vs. variables
The first test, “$array[$n]”, it took 0.4422 seconds.
1 2 3 | $array = array (); for ( $i = 0; $i < 100; $i ++) $array [ $i ] = $i ; |
The second test, “${‘array_’ . $n}”, took 0.9907 seconds.
1 2 | for ( $i = 0; $i < 100; $i ++) ${ 'array_' . $i } = $i ; |
${‘array_’ . $i} ← PHPでもできるんですね、この書き方。
$array[$i] が約2倍速いです。
例2.in_array() vs. key
The first test, “in_array()”, it took 0.9415 seconds.
1 2 | for ( $i = 0; $i < 10; $i ++) $GLOBALS [ 'dummy2' ] = in_array( $i * 20, $GLOBALS [ 'dummy' ]); |
The second test, “key”, it took 0.1269 seconds.
1 2 | for ( $i = 0; $i < 10; $i ++) $GLOBALS [ 'dummy2' ] = isset( $GLOBALS [ 'dummy' ][ $i * 20]); |
keyが約8倍速いです。これは凄い。
例3.== vs. ===
==は値の一致。===は形の一致まで見ます。
The first test, “==”, it took 1.012 seconds.
1 2 | for ( $j = 0; $j < 100; $j ++) $GLOBALS [ 'dummy3' ] = $GLOBALS [ 'dummy1' ] == $GLOBALS [ 'dummy2' ]; |
The second test, “===”, it took 0.1161 seconds.
1 2 | for ( $j = 0; $j < 100; $j ++) $GLOBALS [ 'dummy3' ] = $GLOBALS [ 'dummy1' ] === $GLOBALS [ 'dummy2' ]; |
===が約9倍速い・・・。これは驚きですね!
まとめ
いろいろと試せそうなので、Benchmarksはおすすめです!