2013年09月10日 追記・変更

array文(配列)を覚える

array文は、配列を使う際に用いる。
配列というのはデータを沢山入れられる箱の様な役割。
自分でデータを入れられる数を決めたり、配列の名前を決めたりする事が可能。
もっと専門的に言うと、array文を使うと、同一の型のデータを一列に並べる事が出来る。
また、違う型のデータを混在して並べて配列する事は出来ない。
配列中の各データを配列の要素(element)という。 配列にはその配列全体を指すための名前(配列名)がつく。
要素は「キーと値」のセットの事。
配列では、配列名のキーを指定して、値を取り出す事が出来る。

ただ、登場頻度的にはif文やwhile文、for文の比ではないので、
array文については、ある程度理解したかな?程度で問題ない。

WordPressのカスタマイズをしている際、array構文の連想配列を見かけたため、実際に触る際に抵抗をなくすためにここで軽くでいいので知ってほしい。

配列の種類について

まずは配列の種類から見ていきたい。
一言に配列と言えども、大きく分けて2種類が存在する。
インデックス配列と連想配列だ。それぞれ特徴が違うので見てもらいたい。

インデックス配列
キーは0から順番に数字で振られる。

連想配列
キーは、任意の文字列を指定できる。
WordPressでよく登場するのは、この連想配列の方。なので、連想配列を覚えておけばとりあえずは問題ない。

インデックス配列と、連想配列の違いは、キーが数字か文字列かの違いだ。
さらに、配列の中に配列を作る「多次元配列」にする事も可能だ。
今回は多次元配列ではなく、一次元配列のみ説明する。
講義では多次元配列の説明も行ったが、このページで書かれている一次元配列を覚えれば問題はない。

配列の作り方(array文を使わない場合)

array文を使わないと配列が作れないかというとそうではない。まずはarray文を使わないで配列を作る方法を見てもらいたい。
<?php
$test[0] = 4;
$test[1] = 40;
$test[2] = 'テスト';

echo $test[2];
?>
実行結果:テスト
array文を使わずとも、上記のようにインデックス配列が作れる。

array文を使ったインデックス配列の作り方

では、今度はarray文を使って配列を作ってみる。
<?php
$test = array(10, 20, 'テスト');
echo $test[1];
?>
実行結果:20
array文を使った場合、自動的にキーが0から順番に割り当てられる。
また、配列の呼び出し方は、変数名[キー番号]となる。

array文を使った連想配列の作り方

では、いよいよarray文を使った連想配列の作り方を説明する。
WordPressで使用する事があるとしたら、この連想配列なので、見て理解しておいてもらいたい。
<?php
$fruits = array(
'appple' => 'リンゴ',
'banana' => 'バナナ',
'strawberry' => '苺'
);

echo  $fruits['banana'];
?>
実行結果:バナナ
といったように、連想配列では「=>」の記号を使って、キーと値に割り当てている。
もしWordPressでこのような記述を見かけたら、連想配列でキーを値に割り当てているんだなと分かってもらいたい。

WordPressでのarray文の使い方を知る

WordPressのテーマには、そのテーマの中でのみ利用可能になる独自関数というものが設定できる。
独自関数を設定するファイルは、「functions.php」だ。
このファイルで設定を行わなければ、WordPressの管理画面上でウィジェットの利用や、カスタムメニューの利用は不可能。

今回は、実際の連想配列を使ったarray文を知ってもらうために、ウィジェットの設定内容を記述した。
下記の内容を「functions.php」の中に記述しなければ、管理画面のメニュー「外観」→「ウィジェット」をクリックしても「ウィジェット」の追加・編集が出来ない。

functions.phpでサイドバーのウィジェット利用できるようにする記述内容

<?php
register_sidebar( array(
'name' => 'サイドバーのウィジェット',
'id' => 'sidebar',
'description' => 'サイドバーのウィジェットエリア',
'before_widget' => '<div id="%1$s" class="widget %2$s">',
'after_widget' => '</div>',
) );
?>

この記事が気に入ったら下のボタンをクリック

  • このエントリーをはてなブックマークに追加
  • Clip to Evernote
  • LINEで送る


Leave a Reply