配列 / 連想配列 / 多次元配列 生成方法比較

配列

配列

 状態:-  閲覧数:4,941  投稿日:2010-04-26  更新日:2014-09-29  
配列 / 連想配列 / 多次元配列 生成方法比較
・配列
次元 パターンA パターンB パターンC
1
$a = array("apple", 46, "grape");
$a[0] = "apple";
$a[1] = 46;
$a[2] = "grape";
$a[] = "apple";
$a[] = 46;
$a[] = "grape";
2
$a = array(
0 => array(
0 => 12,
1 => 23,
2 => 25
),
1 => array(
0 => 1,
1 => 2,
2 => "海"
)
);
$a[0][0] = 12;
$a[0][1] = 23;
$a[0][2] = 25;

$a[1][0] = 1;
$a[1][1] = 2;
$a[1][2] = "海";
$a[0][] = 12;
$a[0][] = 23;
$a[0][] = 25;

$a[1][] = 1;
$a[1][] = 2;
$a[1][] = "海";
・連想配列
次元 パターンA パターンB
1
$a = array("日本" => 46);
$a["日本"] = 46;
2
$a = array(
 "日本" => array( "宮城" => 12, "東京" => 23, "名古屋" => 25),
 "アメリカ" => array( "ワシントン" => 1, "ハワイ" => 2, "グアム" => "海")
);
$a["日本"]["宮城"] = 12;
$a["日本"]["東京"] = 23;
$a["日本"]["名古屋"]  =25;

$a["アメリカ"]["ワシントン"]  = 1;
$a["アメリカ"]["ハワイ"] = 2;
$a["アメリカ"]["グアム"]  = "海";


「添え字(インデックス)」と「要素(値)」で、構成されている

 閲覧数:665 投稿日:2010-04-26 更新日:2014-10-06 

1次元配列


パターンA
$a = array("apple", 46, "grape");
print_r($a);

Array
(
   [0] => apple
   [1] => 46
   [2] => grape
)


パターンB
$a = array();//配列の初期化
$a[0] = "apple";
$a[1] = 46;
$a[2] = "grape";
print_r($a);

Array
(
   [0] => apple
   [1] => 46
   [2] => grape
)


パターンC
$a = array();//配列の初期化
$a[] = "apple";
$a[] = 46;
$a[] = "grape";
print_r($a);

Array
(
   [0] => apple
   [1] => 46
   [2] => grape
)



2次元配列


パターンA
$a = array(
 0 => array(
   0 => 12,
   1 => 23,
   2 => 25
 ,
 1 => array(
   0 => 1,
   1 => 2,
   2 => "海"
 
);
print_r($a);

Array
(
   [0] => Array
       (
           [0] => 12
           [1] => 23
           [2] => 25
       

   [1] => Array
       (
           [0] => 1
           [1] => 2
           [2] => 海
       

)


パターンB
$a = array();//配列の初期化
$a[0][0] = 12;
$a[0][1] = 23;
$a[0][2] = 25;

$a[1][0] = 1;
$a[1][1] = 2;
$a[1][2] = "海";

print_r($a);

Array
(
   [0] => Array
       (
           [0] => 12
           [1] => 23
           [2] => 25
       

   [1] => Array
       (
           [0] => 1
           [1] => 2
           [2] => 海
       

)


パターンC
$a = array();//配列の初期化
$a[0][] = 12;
$a[0][] = 23;
$a[0][] = 25;
 
$a[1][] = 1;
$a[1][] = 2;
$a[1][] = "海";

print_r($a);

Array
(
   [0] => Array
       (
           [0] => 12
           [1] => 23
           [2] => 25
       

   [1] => Array
       (
           [0] => 1
           [1] => 2
           [2] => 海
       

)



1次元連想配列


パターンA
$a = array("日本" => 46);
print_r($a);

Array
(
   [日本] => 46
)


パターンB
$a = array();//配列の初期化
$a["日本"] = 46;
print_r($a);

Array
(
   [日本] => 46
)



2次元連想配列


パターンA
$a = array(
 "日本" => array( "宮城" => 12, "東京" => 23, "名古屋" => 25),
 "アメリカ" => array( "ワシントン" => 1, "ハワイ" => 2, "グアム" => "海")
);
print_r($a);

Array
(
   [日本] => Array
       (
           [宮城] => 12
           [東京] => 23
           [名古屋] => 25
       

   [アメリカ] => Array
       (
           [ワシントン] => 1
           [ハワイ] => 2
           [グアム] => 海
       

)


パターンB
$a = array();//配列の初期化

$a["日本"]["宮城"] = 12;
$a["日本"]["東京"] = 23;
$a["日本"]["名古屋"] =25;

$a["アメリカ"]["ワシントン"] = 1;
$a["アメリカ"]["ハワイ"] = 2;
$a["アメリカ"]["グアム"] = "海";

print_r($a);

Array
(
[日本] => Array
(
[宮城] => 12
[東京] => 23
[名古屋] => 25
)

[アメリカ] => Array
(
[ワシントン] => 1
[ハワイ] => 2
[グアム] => 海
)

)




「添え字(インデックス)」と「要素(値)」で、構成されている

添え字(インデックス)は省略可能。省略されると自動でセットされる(既存の添え字の最大値+1)。
また、添え字には文字列も指定可能(連想配列)。


   $signal = array("red", 3 => "blue", "yellow");//2つ目の要素にのみ添え字(「3」)を設定
   
   foreach($signal as $key => $val){//添え字の一部を省略した場合、省略した要素の添え字は、その前の要素の添え字に「+1」した値になる。つまり、3番目の添え字は「4」となる。要素数は「3」。添え字の数字は要素の背番号に過ぎない
       echo $key." : ".$val."
";
   }
   
   echo count($signal);

▼結果

  /demo/array.html





   $signal = array(-6 => "red", "blue", "yellow");//添え字に負の数を指定すると、次以降の添え字は「0」から始まる整数となる
   
   foreach($signal as $key => $val){
       echo $key." : ".$val."
";
   }

▼結果

  /demo/array2.html


多次元配列

コメント投稿(ログインが必要)



週間人気ページランキング / 4-25 → 5-1
順位 ページタイトル抜粋 アクセス数
1 Parse error: syntax error, unexpected 'public' (T_PUBLIC) | Parse error(エラーメッセージ) 11
2 ブラウザを閉じたらセッションデータはどうなるの? | セッション 10
3 セッション管理が必要な理由は、HTTPプロトコルには状態を保持する機能がないため | セッション 5
3 PHPで定数を定義する方法は2種類ある / 配列定数の定義 5
4 コード例 … 「例外処理」はネストすることができる 4
4 セッション カテゴリー 4
5 型の種類 | 型 3
5 Composer | 依存関係マネージャ 3
5 Fatal error: Access level to ▲::$△ must be protected (as in class ●) or weaker | Fatal error(エラーメッセージ) 3
5 or(||) | 演算子 3
5 セッション名 | セッション 3
5 PHP用語 3
5 Fatal error: require_once(): Failed opening required 'PEAR.php' | Fatal error(エラーメッセージ) 3
5 Warning: PDO::query(): LOAD DATA LOCAL INFILE forbidden | Warning(エラーメッセージ) 3
6 curl で Cookie を使用する 2
6 例外処理 | 制御構造 2
6 register_shutdown_function | 関数処理 関数 2
6 Fatal error: Uncaught Error: Call to a member function modify() on string | Fatal error(エラーメッセージ) 2
6 Fatal error: Call to a member function **() on a non-object in ○○ on line △△ | Fatal error(エラーメッセージ) 2
6 Fatal error: Cannot redeclare 関数名() (previously declared in ファイル名:○○) in ファイル名 | Fatal error(エラーメッセージ) 2
2024/5/2 1:01 更新