📖
phpの「->」と「[]」の違い
発端
$apes = array(
'monkey' => 'おさる',
'chimpanzee' => 'チンパン',
);
phpで上記のような連想配列でvalueにアクセスしようとして
echo $apes -> monkey;
と書いたらエラーになった。
正しくは
echo $apes['monkey']
と記述する
原因
phpのアロー演算子をjsのドット記法と似たようなものだと思っていた
jsでは
①オブジェクトリテラルで定義したプロパティ
②クラスのオブジェクトインスタンスのプロパティ
①②ともにドット記法でプロパティにアクセスできるのでphpでも同じようなものだと思っていた。
phpの場合
①はブラケット記法
$apes['monkey']
②はアロー演算子
$apes -> monkey
でそれぞれアクセスする。
Discussion