RのWeb制作

Webサービス制作のための技術情報を。

Web制作

[PHP]ベンチマークサイトの紹介

投稿日:

Speed
あなたは表示速度が「速い」サイトと「遅い」サイト、どちらがいいですか?
「速い」サイトの方がいいですよね!

「速い」サイトは「速くする」関数の使い方が上手です。
PHPのベンチマーク(いろいろな関数の速度を調べられる)サイトを紹介します!

Benchmarks

試せることはたくさんあります。
以下に例を示します。

例1.arrays vs. variables

The first test, “$array[$n]”, it took 0.4422 seconds.

$array = array();
for ($i = 0; $i < 100; $i++)
	$array[$i] = $i;

The second test, “${‘array_’ . $n}”, took 0.9907 seconds.

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.

for ($i = 0; $i < 10; $i++)
	$GLOBALS['dummy2'] = in_array($i * 20, $GLOBALS['dummy']);

The second test, “key”, it took 0.1269 seconds.

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.

for ($j = 0; $j < 100; $j++)
	$GLOBALS['dummy3'] = $GLOBALS['dummy1'] == $GLOBALS['dummy2'];

The second test, “===”, it took 0.1161 seconds.

for ($j = 0; $j < 100; $j++)
	$GLOBALS['dummy3'] = $GLOBALS['dummy1'] === $GLOBALS['dummy2'];

===が約9倍速い・・・。これは驚きですね!

まとめ

いろいろと試せそうなので、Benchmarksはおすすめです!

-Web制作

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

[Meisyo]強化合成の追加とミニゲーム1種類の追加

名将と呼ばれた者達よりお知らせです。 強化合成を実装しました。 強化合成とは 選手たちの好きな能力を強化します。 強化値は+0~5です。能力値にそのまま反映されます。 +2(+3への)以降の強化は、失 …

no image

[PHP]まとめ読みをPSRで改良する(3)

(2)の記事から「PDO」を使い、データの通信をオブジェクト化しました。 password_hashを使い、パスワード処理の暗号化も行いました。 PDOを導入する一番の理由は「mysql_query」 …

[Meisyo]ソースコードから学ぶ試合の基礎設計1

ワンボタンで監督始点の高校野球の試合を楽しめる名将と呼ばれた者達。その試合中には、多くのアルゴリズムが活躍しています。 ここでは、試合の設計を理解することで強いチームを作る指針を記載しておきます。 ソ …

[SQL]URLから正規表現でホストの抽出

他のサイトの説明が釈然としなかったので投稿。 以下のref0~2番のホストを抽出したいとする。 ref[0] = "http://www.other.com/path1/index.php? …

no image

独自ドメイン取得

ねんがんの どくじどめいんを しゅとくしたぞ!( ^^) 「http://rei-farms.jp/」を独自ドメインとして取得しました。 ブログは「http://rei-farms.jp/webmak …