配列
配列すべてはechoでは出力できない
$team = array("勇者", "魔法使い");
print_r($team);
特定の要素のみを出力する場合はechoを用いる
echo $team[1];
魔法使い
要素の追加
$team[] = "ドラゴン";
print_r($team);
Array (
[0] => 勇者
[1] => 魔法使い
[2] => ドラゴン
)
要素の削除(unset)
ただしunsetを用いた場合、その番号は歯抜けになる
unset($team[1]);
print_r($team);
Array (
[0] => 勇者
[2] => ドラゴン
)
特定の文字で区切って配列に追加(explode)
勇者,魔法使い,ドラゴン
$input = trim(fgets(STDIN));
$array = explode(",", $input);
print_r($array);
Array (
[0] => 勇者
[1] => 魔法使い
[2] => ドラゴン
)
要素数をカウント
echo count($array);
foreachで配列の値を取り出す
foreach(配列 as バリューを代入する変数)
foreach($array as $value) {
//処理
}
特定の値で配列を埋める
array_fill(最初のインデックス, 埋める個数, 埋める内容)
$a = array_fill(0, 5, "森");
print_r($array_fill);
Array (
[0] => 森
[1] => 森
[2] => 森
[3] => 森
[4] => 森
)
連想配列
配列名 = array(key => value)
$a = array(
"ロングソード" => 4,
"ショートソード" => 3
);
print_r($a);
Array (
[ロングソード] => 4,
[ショートソード] => 3
)
連想配列の追加
$add["ダガー"] = 5;
print_r($add);
Array (
[ダガー] => 5;
)
連想配列の削除
unset(配列名[key]);
unset($a["ロングソード"]);
連想配列の整理
-
sort(配列);
配列のvalueを小さい順(1,2,3,,や あ,い,う,, という順)に並び替えます。
連想配列に対して実行するとキーが失われるので注意。 -
asort(配列);
連想配列のvalueを小さい順(1,2,3,,や あ,い,う,, という順)に並び替えます。 -
arsort(配列);
連想配列のvalueを大きい順(3,2,1 や う,い,あ という順)に並び替えます。 -
ksort(配列);
連想配列のkeyを小さい順(1,2,3,,や あ,い,う,, という順)に並び替えます。 -
krsort(配列);
連想配列のkeyを大きい順(1,2,3,,や あ,い,う,, という順)に並び替えます。
foreachで連想配列の値を取り出す
foreach(配列 as キーを代入する変数 => バリューを代入する変数)
foreach($array as $key => $value){
//処理
}
重複した配列要素を削除
array_unique
$array = ["one", "two", "three","two"];
$unique = array_unique($array);
print_r($unique);
Array
(
[0] => one
[1] => two
[2] => three
)
配列の中を検索
in_array(string, array)
$array = array("Mac", "NT", "Irix", "Linux");
if (in_array("Irix", $array)) {
echo "true";
}
true
要素の先頭を削除し、要素を詰める
$fruits = array("いちご", "りんご", "ぶどう", "ばなな");
array_shift($fruits);
var_dump($fruits);
array(3) {
[0]=>
string(9) "りんご"
[1]=>
string(9) "ぶどう"
[2]=>
string(9) "ばなな"
}