- 締切済み
【PHP】配列に出てくるこの名称はなんですか?
PHP初心者です。 専門用語について教えてください。 $myAr[0] = 'あ'; $myAr[1] = 'い'; var_dump($myAr); としたとき、 array(2) { [0]=> string(3) "あ" [1]=> string(3) "い" } と出力されると思いますが、この[0][1]の「名称」は何でしょう? 意味はわかりますが呼び名がわからずすっきりしません。 キーじゃないですしね。 お詳しい方、よろしくお願いいたします。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- めとろいと(@naktak)
- ベストアンサー率36% (785/2139)
> キーはユーザーが任意に命名できるものですが、今回問題になっているの > は「生成順」に自動的につけられる番号のことです。 指定した文字列をキーとするのも添え字です。 PHPでは連想インデックスとか読んでます。それを利用した配列は連想配列です。 今回の場合、値をセットしている時点でキーを指定して値をセットしているのですから、 出力すれば、そのキーと値が出力されますね。 仮にキーが5,6という指定で値をセットしていたならば、出力されるキーも5,6です。 自動で生成されるキーは以下のようなスクリプトがあります。 $myAr = array(); array_push($myAr, "あ", "い"); var_dump($myAr); これで出力されるものも、インデックス、キーと呼ばれるものです。 この時のキーは0,1です。 > $myAr['a'] = 'あ'; > としても同様に > [0]=> string(3) "あ" キーが異なるので、上記のようになる事はあり得ません。
- php504
- ベストアンサー率42% (926/2160)
勘違いでしょう $myAr['a'] = 'あ'; $myAr[1] = 'い'; var_dump($myAr); は array(2) { ["a"]=> string(2) "あ" [1]=> string(2) "い" } になります。
補足
勘違いに付き申し訳ありませんでした。
>両者は関係ないもの 関係ある。 配列を理解できていない。 >$myAr[0] = 'あ'; >[0]=> string(3) "あ" >$myAr['a'] = 'あ'; >[0]=> string(3) "あ" 概念的にはどちらも $myAr = ['あ'] として格納されている。 ただし後者は $myAr = ['a':'あ'] となる(飽くまでも概念ね) つまりどっちにしても「index 0番」に入っているというのは変らない。 よって [0]=> string(3) "あ" と出る。 ・・・の筈
お礼
ちょっと勘違いかもしれません。 調べなおします。 ありがとうございました。
- めとろいと(@naktak)
- ベストアンサー率36% (785/2139)
どんな言語でも通じる言葉は添え字とかインデックス。 PHPだとキーとも呼びます。
補足
あ、ちょっと例が悪かったかもしれません。 $myAr[0] = 'あ'; のほうの[0]ではなく、 [0]=> string(3) "あ" のほうの[0]です。 $myAr['a'] = 'あ'; としても同様に [0]=> string(3) "あ" と出ますから両者は関係ないものということがわります。 キーはユーザーが任意に命名できるものですが、今回問題になっているのは「生成順」に自動的につけられる番号のことです。 よろしくお願いいたします。
補足
勘違いに付き申し訳ありませんでした。。。