変数操作関数編 その2
- 編集部の見解や意向と異なる内容の場合があります
- 編集部は内容について正確性を保証できません
- 画像が表示されない場合、編集部では対応できません
- 内容の追加・修正も編集部では対応できません
ヒューマンリソシア株式会社はコラム「変数操作関数編 その2」を公開しました
変数操作関数、その2でございます。
さて…個人的に勝手に「2a問題」とか呼称をしておりますが。
PHPは「型をあまり意識しなくていい言語」とか言われますが、状況にも拠りますし…まぁ正直に申し上げて
「上級を意識する」かたがたにとって、型を意識しないのはどちらかというと「デメリット」として働く事も
多々ございます。
端的には、以下のコードでよく「ひどい目に」あいます。
$s = ‘abcdefg';
if (false != strpos($s, ‘a’)) {
echo ‘文字がみつかりました’, “\n”;
} else {
echo ‘文字はありません’, “\n”;
}
「これが、!=じゃなくて!==だったらねぇ…」と悔やむケースは、ケースとしては稀ですが、引っかかると大変に厄介で腹立たしいものであろうと推測をいたしますが、如何でしょうか?
さて…そんなこんなもございますので、PHPにおける型のお話は、案外と重要で鬼門で肝要なものでございます。
まずは簡単に「現在の変数の型がいかなるものか」を知るための関数を簡単に列挙してみましょう。
is_array
is_bool
is_callable
is_float または is_double または is_real
is_int または is_integer または is_long
is_null
is_object
is_resource
is_string
といった各種が存在いたします。「または」があるのは、エイリアスがある関数で、
中身は(エイリアスなので当然っちゃぁ当然ですが)完全に一緒です。
また、これ以外にちょっと変わり種として
is_scalar
is_numeric
あたりが存在します。
この続きは以下をご覧ください
http://resocia.jp/column/847/
ソーシャルもやってます!