配列の書き方~取得
$color = ['red', 'blue', 'yellow'];
echo $color[0];
//redが取得される。
//$coler[2]とすると'yellow'を取得することができる。
すべて取得
$test = [1, 2, 3];
echo "<pre>";
print_r($coler);
echo "<pre>";
上記でとすべて取得できる。
数字は""不用
2次元配列
$test =
[
[1, 2, 3],
["aka", "ao", "midori"]
];
echo $test[1][1];
//結果:aoが取得される。
//echo $test[0][2];では、3が取得される。
2次元配列取得
$test =
[
[1, 2, 3],
["aka", "ao", "midori"]
];
$test2=[];
foreach($test as$keys=> $values){
$test2[]= $values;
}
print_r($test2);
// Array
// (
// [0] => Array
// (
// [0] => 1
// [1] => 2
// [2] => 3
// )
// [1] => Array
// (
// [0] => aka
// [1] => ao
// [2] => midori
// )
// )
2次元配列を1つの配列にまとめる。
$test =
[
[1, 2, 3],
["aka", "ao", "midori"]
];
$test2=[];
foreach($test as $keys=> $values){
foreach($values as$key=>$value){
$test2[]= $value;
}
}
print_r($test2);
// Array
// (
// [0] => 1
// [1] => 2
// [2] => 3
// [3] => aka
// [4] => ao
// [5] => midori
// )
一回目のforeachですべての
valueをvaluesの中に
[1, 2, 3],
["aka", "ao", "midori"]
更に上記の値をforeachで回し配列の中にvalueだけを変数の中に入れる。
連想配列
$fruit=[
"赤"=>"リンゴ",
"青"=>"ブドウ",
"黄色"=>"バナナ"
];
echo($fruit["赤"]);
//リンゴ
連想配列階層深く
$user =
[
'田中' => [
'mail' => 'tanaka●●.com',
'from' => 'Japan'
],
'bobby' => [
'mail' => 'bobby●●.com',
'from' => 'America'
]
];
foreach($user as $keys => $values){
print_r('名前は'.':'.$keys.'<br>');
}
//名前は:田中
//名前は:bobby
//valuesで取得することもできる。
田中さんのデータだけ取得して変数の中に代入
$user =
[
'田中' => [
'mail' => 'tanaka●●.com',
'from' => 'Japan'
],
'bobby' => [
'mail' => 'bobby●●.com',
'from' => 'America'
]
];
$evacuation=[];
foreach($user as $key => $value){
if($keys == '田中'){
$evacuation = $value;
}
}
print_r($evacuation);
//Array ( [mail] => tanaka●●.com [from] => Japan )
もしkeyが田中だったら変数の中にvalueを入れて違う場合は何もしない。
多次元配列
$member = [
["1","2","3"],
["A","B","C"],
["a","b","c"]
];
echo ($member[2][2]);//c
echo ($member[1][1]);//B
echo ($member [0][0]);//1