###
今回も引数の話ですね。引数の型である「タイプヒンティング」について、少し学んでいきたいと思います。
PHPは所謂「動的型付け言語」になります。
「変数に明示的に型を指定せず、実行時に適切に型を推測してくれる」この型システムは大変に、
特に初学者にとっては便利なものではありますが。
「適切な推測」が、必ずしも本当に「プログラマの意図するところであるかどうか」については状況によるので、
場合によっては「困る」シチュエーションが、僅かながらに、存在します。
一つ、割と分かりやすい実例を。
$a = 2;
if (‘2a’ == $a) {
echo “equal\n”;
} else {
echo “not equal\n”;
}
2aと2の比較なので当然………equalになります。trueです。falseにはなりません…困った事に。
是非、お手持ちの実行環境で試してみて下さい。
筆者はこの問題を勝手に「2a問題」と呼称していますが。
これを始めに聞いた時は、なにげに度肝を抜かれたものでございます。
近しい実例として、以下のケースで実際に「割と深刻な」問題を引き起こします。
この続きは以下をご覧ください
リンク
御社のプレスリリース・イベント情報を登録するには、ZDNet Japan企業情報センターサービスへのお申し込みをいただく必要がございます。詳しくは以下のページをご覧ください。