前回の講義では「変数」について学びましたね。二人ともばっちりですか?
ばっちり復習しました!
・・・・・・
おやおや、猫田さんは怪しいですね。 今回の講義で教える配列は前回の変数の続きなので、きちんと復習してから授業に入りますよ
前回の授業はこちらに載っていますので、怪しい人は確認してください。
復習してきました! もうばっちりです
それでは、今回は配列について学んでいきましょう。
PHPの学習:配列ってなに?
変数は「1つの箱に対して1つの値を保存する」仕組みになっていました。
そうでした。そうでした
一方、配列は「1つの箱の中に複数の値を保存する」のが特徴的です。
配列を使うと、複数の値をグループとして保存出来るので、プログラミングの管理もしやすくなるのがポイントです。
PHPの学習:配列の仕組みと書き方
変数の学習をした際には「$変数名=データ」というような書き方をしました。
これは、それぞれの変数に1つのデータを保存している状態です。
こちらが変数で複数の値を表示させる際のプログラミングです。
配列を使うとどうなるんですか?
配列を使うと、複数の変数を1つにまとめることができます
んん? まーた、よくわからないことを言い始めたなぁ
そうですね。わかりにくいかもしれません。 実際にプログラミングしたほうがイメージが掴めるのでやってみましょう
新たに出てきた「array関数」について
配列を説明しやすいように、ちょっとしたコードを書いてみたので、ご覧ください
左が、実際に書いたコード。右が、出力結果です。
「$color」という変数を配列化して、3つの値を保存しています。
これが配列かー
こちらで新たに出てきたプログラムが「array」と「$変数名」の後に記載された「[数字](角括弧)」です。
この2つについて簡単に説明します。arrayは、変数を配列化する際に使われる関数です。
配列は「$変数名 = array(“1個目の値”,” 2個目の値”,” 3個目の値”);」という使い方をします。
注意点は、「保管したいデータごとに「,(カンマ)」で区切ることです。
arrayの中身が数字の場合
このようになります。 次は変数名の後に記入された「[](角括弧)」について紹介しましょう。
配列を個別に管理するときは「[]」を使用する
変数名の後に記入された「[数字]」は、「配列の何番目に保存されたデータなのか」を表しています。
2つめだったら「2」ですね。 ふむ、これは簡単です
猫田さん……実はちょっと違うんですよ。 とても勘違いされやすいのですが、配列の仕組みでは、1番目を0と表記します。 配列は「0」からスタートすると覚えておいてくださいね
上記の例に照らし合わせてみましょう。
$colorの配列に保存されたデータの1番目は「red」という文字列ですが、表記は「$color[0]」です。
また、配列に保存された2番目のデータは「green」ですが、表記は「$color[1]」です。
PHPの学習:配列で使える3つのテクニック
続いて、配列を使うときのテクニックを3つ紹介します
配列のテクニック①:arrayを使わない書き方
PHPで配列を使う際には「array」を使用するのが一般的。でも、arrayを使わなくても配列にすることは可能です。
上記で紹介した「配列を個別で管理する方法」でプログラミングをすれば、arrayを使わなくても配列化できます。
どちらも、$colorの変数を配列化することに変わりはありません。
ただし、arrayを使うとプログラミングが1行で済みます。一方、arrayを使わないと、配列に保存するデータの個数だけ行数が必要となります。ここが大きな違いです。
両方覚えておいて、ケースに応じて使い分けられるのが理想ですね
配列のテクニック②:要素の追加方法
一度作った配列に要素を追加したくなることもありますよね
追加したい情報があるとき……。 はい、いろいろなケースがあるでしょうね
要素の 追加方法はいろいろありますが、基本となるのは配列の最後にデータを追加する方法です。
実際にやってみましょう。
このように、配列のデータを保存した後に「$変数名[]」と入力して、保存したいデータを入力すると、指定した変数の配列の最後の部分に新たなデータを保存することが出来ます。
これはシンプルでわかりやすいなぁ
今回のケースだと、$colorという変数の配列の最後の部分にyellowという文字列のデータを保存しました。
この他にも配列の要素を追加する方法はありますが、それはまた別の機会に紹介します。
配列のテクニック③:要素の削除方法
要素を追加したいときもあれば、削除したいときもあります
現状の配列のデータは下記の通りになっています。
- color[0] = red
- color[1] = green
- color[2] = blue
- color[3] = yellow
ここから「color[1]」のgreenを削除してみましょう。
今回使用したのは「unset」という関数です。
unsetは「指定した配列本体の要素を削除する」という機能を持っています。
そのため、出力結果では「color[1]」の要素が削除されているために、表示しようとしてもエラーが出ます。
削除の使い方は、画像のようにunsetで変数の配列を指定して、指定したキーを削除するだけなので、簡単です。
配列を使ったプログラミングに挑戦!
それではここまでの学習を踏まえて、実際に配列を使ったプログラミングをしてみましょう
テストかー がんばるぞー
テストプログラミング内容
作ってもらいたい仕様については下記の通りです。
- 4つ以上の要素のある配列を2つ作る
- 1つ目の配列に要素を1つ以上追加する
- 2つ目の配列から要素を1つ以上削除する
- 全ての配列を表示する
こちらの仕様でプログラミングをスタートしてください。
はい。 では、二人とも頑張ってみてくださいね
テストの答え合わせ
こちらが今回の答えです。 配列の要素の項目については何でも良いので、自分でキチンと出来たかどうかをチェックしてください。
まとめ:配列は覚えておくととても便利
はい。 というわけで、今回は配列の使い方や仕組みを学習しました。二人はどうでしたか?
1からではなく、0から数えるってのが衝撃ですねぇ
たしかに。 間違いやすいポイントだと思いました。 でも、あとは変数を理解していればやれそうです
いいですね。 この調子で頑張っていきましょう!