前談
転職して情シスから開発エンジニアに戻った
この前初出社を迎えました。
その時新卒の社員と話したところ、プログラムの話をしました。
いきなりプログラムの話とは、やっぱり開発エンジニアが150名以上いると違うんですかね。
僕の新卒は上司と二人だったので、ある意味プログラムとアニメとかの話しかしませんでしたねw
本編
新卒の社員とプログラムの話をした時にPHPリファレンスの話になり、加算子・減算子の話をしました。
"$i++と++$iって同じじゃないんですか?"
確かにプラスすることには変わらない。だが違うのだ。
違うのは加算されるタイミングなんだよ。
僕にはリファレンスお兄さんことA上司がいたから知っている。
テストコードは以下の通りです。
<?php
echo '$i++の場合'."\n";
$i=5;
var_dump($i++);
var_dump($i);
echo '++$iの場合'."\n";
$i=5;
var_dump(++$i);
var_dump($i);
?>
出力結果:
$i++の場合
int(5)
int(6)
++$iの場合
int(6)
int(6)
余談
実は速度も違うらしい。僕は知らなかった。
2008年の記事なので、今のPHPのバージョンで違いはあるのか次回確かめてみよう。