PHPの勉強!その2~配列・連想配列

プログラミング
スポンサーリンク

どうも、p太郎です。

昨日に引き続きPHPのお勉強しました(‘_’)

前回と同じような感じで書いていきます。

前回の記事はこちら↓

配列

PHPの配列は要素数を指定しなくてもいいみたい。

<?php
    $animals = ['犬', '猫', '狸'];

    print_r($animals);
?>

インデックス番号の0から値が入っていきます。

実行結果↓

Array
(
[0] => 犬
[1] => 猫
[2] => 狸
)


後から配列に値を追加もできる。

<?php
    $animals = ['犬', '猫', '狸'];
    $animals[] = '鼠'; 

    print_r($animals);
?>

実行結果↓

Array
(
[0] => 犬
[1] => 猫
[2] => 狸
[3] => 鼠
)

Javaでこんなムーブかますと、怒られます。

public static void main(String[] args) {
  String[] animals = {"犬","猫","狸"};
  animals[3] = "鼠";
    System.out.println(animals[0] + animals[1] + animals[2]);
}

animal[3] = “鼠”;
の所でArrayIndexOutOfBoundsExceptionが発生します。
「不正なインデックスだよ!」ってこと。

PHPの勉強なんで詳しく書かないですが、Javaで先ほどのPHPみたいに要素数を変えて値を追加したい!って場合はArrayList使う事になります。

PHPは楽できそうでいいですね。

連想配列

配列のkeyが[0],[1],[2]のような数値でしたが、連想配列は文字列をkeyにします。

<?php
    $animals = [
        'dog' => '犬',
        'cat' => '猫',
        'rabbit' => '兎'
    ];
     
    print_r($animals);
?>

実行結果↓

Array
(
    [dog] => 犬
    [cat] => 猫
    [rabbit] => 兎
)

これも楽ちん。

JavaやとMap使わなあかん。

public static void main(String[] args) {
 HashMap<String,String> animals = new HashMap<String,String>();    
 animals.put("dog","犬");
 animals.put("cat","猫");
 animals.put("rabbit","兎");
 for(String key : animals.keySet()) {
   System.out.println(key + "=>" + animals.get(key));
 }
}


連想配列も圧倒的にPHPのが楽。

ちなみに配列と連想配列をごちゃまぜする事もできる。
配列と連想配列の同居。

<?php
    $animal = [
        'dog' => '犬',
        'cat' => '猫',
        0 => 0
    ];
     
    print_r($animal);
?>
Array
(
    [dog] => 犬
    [cat] => 猫
    [0] => 0
)

混在しちゃうとトラブルの元になりそうですけど、大丈夫なもんなんですかね・・・。



自分が学習に使っている本の次の章が演算子なのですが、ここは記事にせずさっと読み進めようか悩んでいます。

なので、次回は演算子になるか制御構文になるか未定です。

演算子に新しい発見があれば記事するかもしれないです(‘ω’)





今回はここまでです!

最後まで見ていただきありがとうございました!
ランキングに参加していますので、↓をクリックで応援よろしくお願いします!

にほんブログ村 IT技術ブログへ
にほんブログ村


プログラムランキング

コメント

タイトルとURLをコピーしました