【php】php7の処理がphp5より良くなっているのが確認できる例
問題
php7ってphp5からいろいろ改善されているらしいですけど、何か違うんですか
答え
例えば、多次元配列を用意すると、php5まではやたらとメモリを使っていたが、php7ではメモリ使用量が抑えられ、処理も速くなっている。
<?php ini_set('memory_limit', '1G'); $a = array(); for($i = 0; $i < 50000; $i++){ for($j = 0; $j < 100; $j++){ $a[$i][$j] = ''; } } var_dump(memory_get_usage());
上の処理をphp5で実行すると
# time php test.php int(904399632) real 0m2.959s user 0m2.598s sys 0m0.362s
php7で実行すると
# time /usr/local/php/7rc6/bin/php test.php int(414851768) real 0m0.802s user 0m0.585s sys 0m0.218s
メモリ使用量は半分以下、処理時間は3分の1以下!
ただ、多次元配列にするとやたらとメモリを消費するのは変わってないので、こういった書き方をするときは要注意。
コメント