为什么我在php中看不到multidimensionnel数组中的所有元素

时间:2018-03-18 13:13:00

标签: php arrays multidimensional-array

我在php中创建了一个multidimensionnal数组。 我想得到所有问题的指定。 当我尝试观看我的数据时,我没有得到所有问题......

<?php

$questions = array(
	'question' => array(
		'designignation' => 'Souhaitez-vous pouvoir contrôler votre bateau ?',
		'info' => '',
		'Packs' => array(
			'PackMini' => array(
				'description' => 'Pack contrôle Basique', 
				'c' => array(
					'b7' => '1',
					'b9' => '1'
				), 
				'm' => array(
					'b7' => '1',
					'b9' => '1'
				) 
			),
			'PackTotal' => array(
				'description' => 'Pack contrôle Complet', 
				'50' => array(
					'c' => array(
						'b9' => '3'
					), 
					'm' => array(
						'b9' => '2'
					) 
				),
				'55' => array(
					'c' => array(
						'b9' => '3'
					), 
					'm' => array(
						'b9' => '2'
					) 
				),
				'60' => array(
					'c' => array(
						'b9' => '6'
					), 
					'm' => array(
						'b9' => '4'
					) 
				)
			)
		)
	),
	'question' => array(
		'designignation' => 'Souhaitez-vous contrôler les lumières?',
		'info' => '',
		'Packs' => array(
			'PackMini' => array(
				'description' => 'Pack lumière basique', 
				'c' => array(
					'bE' => '2'
				), 
				'm' => array(
					'bE' => '2'
				) 
			),
			'PackTotal' => array(
				'description' => 'Pack lumière Complet Intérieur & Exterieur', 
				'35' => array(
					'c' => array(
						'bE' => '8'
					), 
					'm' => array(
						'bE' => '5'
					) 
				),
				'40' => array(
					'c' => array(
						'bE' => '9'
					), 
					'm' => array(
						'bE' => '6'
					) 
				),
				'45' => array(
					'c' => array(
						'bE' => '11'
					), 
					'm' => array(
						'bE' => '7'
					) 
				),
				'50' => array(
					'c' => array(
						'bE' => '12'
					), 
					'm' => array(
						'bE' => '8'
					) 
				),
				'55' => array(
					'c' => array(
						'bE' => '14'
					), 
					'm' => array(
						'bE' => '9'
					) 
				),
				'60' => array(
					'c' => array(
						'bE' => '15'
					), 
					'm' => array(
						'bE' => '10'
					) 
				)
			)
		)
	),
	'question' => array(
		'designignation' => 'Souhaitez-vous plus de confort à bord?',
		'info' => 'Mesure de tempêratires, humidité',
		'Packs' => array(
			'PackMini' => array(
				'description' => 'Pack mesure basique', 
				'c' => array(
					'b7' => '1'
				), 
				'm' => array(
					'b7' => '1'
				) 
			),
			'PackTotal' => array(
				'description' => 'Pack mesure Complet', 
				'35' => array(
					'c' => array(
						'b7' => '3'
					), 
					'm' => array(
						'b7' => '2'
					) 
				),
				'40' => array(
					'c' => array(
						'b7' => '5'
					), 
					'm' => array(
						'b7' => '3'
					) 
				),
				'45' => array(
					'c' => array(
						'b7' => '5'
					), 
					'm' => array(
						'b7' => '3'
					) 
				),
				'50' => array(
					'c' => array(
						'b7' => '6'
					), 
					'm' => array(
						'b7' => '4'
					) 
				),
				'55' => array(
					'c' => array(
						'b7' => '6'
					), 
					'm' => array(
						'b7' => '4'
					) 
				),
				'60' => array(
					'c' => array(
						'b7' => '8'
					), 
					'm' => array(
						'b7' => '5'
					) 
				)
			)
		)
	),
	'question' => array(
		'designignation' => 'Souhaitez-vous plus de sécurité à bord?',
		'info' => '',
		'Packs' => array(
			'PackMini' => array(
				'description' => 'Pack sécurité intérieur basique', 
				'c' => array(
					'b7' => '1'
				), 
				'm' => array(
					'b7' => '1'
				) 
			),
			'PackTotal' => array(
				'description' => 'Pack sécurité interieur Complet', 
				'35' => array(
					'c' => array(
						'b7' => '2'
					), 
					'm' => array(
						'b7' => '1'
					) 
				),
				'40' => array(
					'c' => array(
						'b7' => '2'
					), 
					'm' => array(
						'b7' => '1'
					) 
				),
				'45' => array(
					'c' => array(
						'b7' => '2'
					), 
					'm' => array(
						'b7' => '1'
					) 
				),
				'50' => array(
					'c' => array(
						'b7' => '3'
					), 
					'm' => array(
						'b7' => '2'
					) 
				),
				'55' => array(
					'c' => array(
						'b7' => '3'
					), 
					'm' => array(
						'b7' => '2'
					) 
				),
				'60' => array(
					'c' => array(
						'b7' => '3'
					), 
					'm' => array(
						'b7' => '2'
					) 
				)
			)
		)
	),
	'question' => array(
		'designignation' => 'Souhaitez-vous plus de sécurité à l\'éxterieur?',
		'info' => '',
		'Packs' => array(
			'PackMini' => array(
				'description' => 'Pack sécurité éxterieur basique', 
				'c' => array(
					'b7' => '1'
				), 
				'm' => array(
					'b7' => '1'
				) 
			),
			'PackTotal' => array(
				'description' => 'Pack sécurité éxterieur Complet', 
				'35' => array(
					'c' => array(
						'b7' => '6'
					), 
					'm' => array(
						'b7' => '4'
					) 
				),
				'40' => array(
					'c' => array(
						'b7' => '6'
					), 
					'm' => array(
						'b7' => '4'
					) 
				),
				'45' => array(
					'c' => array(
						'b7' => '6'
					), 
					'm' => array(
						'b7' => '4'
					) 
				),
				'50' => array(
					'c' => array(
						'b7' => '6'
					), 
					'm' => array(
						'b7' => '4'
					) 
				),
				'55' => array(
					'c' => array(
						'b7' => '6'
					), 
					'm' => array(
						'b7' => '4'
					) 
				),
				'60' => array(
					'c' => array(
						'b7' => '6'
					), 
					'm' => array(
						'b7' => '4'
					) 
				)
			)
		)
	)
);

for($i = 0; $i < count($questions); $i++){
	var_dump($questions['question']);
}


?>

我从阵列中得到的最后一个问题很少,而不是第一个:

<?php

array(3) {
  ["designignation"]=>
  string(50) "Souhaitez-vous plus de sécurité à l'éxterieur?"
  ["info"]=>
  string(0) ""
  ["Packs"]=>
  array(2) {
    ["PackMini"]=>
    array(3) {
      ["description"]=>
      string(34) "Pack sécurité éxterieur basique"
      ["c"]=>
      array(1) {
        ["b7"]=>
        string(1) "1"
      }
      ["m"]=>
      array(1) {
        ["b7"]=>
        string(1) "1"
      }
    }
    ["PackTotal"]=>
    array(7) {
      ["description"]=>
      string(34) "Pack sécurité éxterieur Complet"
      [35]=>
      array(2) {
        ["c"]=>
        array(1) {
          ["b7"]=>
          string(1) "6"
        }
        ["m"]=>
        array(1) {
          ["b7"]=>
          string(1) "4"
        }
      }
      [40]=>
      array(2) {
        ["c"]=>
        array(1) {
          ["b7"]=>
          string(1) "6"
        }
        ["m"]=>
        array(1) {
          ["b7"]=>
          string(1) "4"
        }
      }
      [45]=>
      array(2) {
        ["c"]=>
        array(1) {
          ["b7"]=>
          string(1) "6"
        }
        ["m"]=>
        array(1) {
          ["b7"]=>
          string(1) "4"
        }
      }
      [50]=>
      array(2) {
        ["c"]=>
        array(1) {
          ["b7"]=>
          string(1) "6"
        }
        ["m"]=>
        array(1) {
          ["b7"]=>
          string(1) "4"
        }
      }
      [55]=>
      array(2) {
        ["c"]=>
        array(1) {
          ["b7"]=>
          string(1) "6"
        }
        ["m"]=>
        array(1) {
          ["b7"]=>
          string(1) "4"
        }
      }
      [60]=>
      array(2) {
        ["c"]=>
        array(1) {
          ["b7"]=>
          string(1) "6"
        }
        ["m"]=>
        array(1) {
          ["b7"]=>
          string(1) "4"
        }
      }
    }
  }
}


	
		
		
    
   ?>

我只是想创建一个数组并在里面搜索信息来创建我的调查。

谢谢你的帮助。

1 个答案:

答案 0 :(得分:2)

您的阵列中不能有多次相同的question键。每一个都覆盖了前一个。这就是为什么你只得到一个问题(最后一个)。

您可以像这样格式化数组:

$questions = array(
    'question' => array(
        array(
            'designignation' => 'Souhaitez-vous pouvoir contrôler votre bateau ?',
            'info' => '',
            'Packs' => array(
            )
        ),
        array(
            'designignation' => 'Souhaitez-vous contrôler les lumières?',
            'info' => '',
            'Packs' => array(
            )
        ),
        array(
            'designignation' => 'Souhaitez-vous plus de confort à bord?',
            'info' => 'Mesure de tempêratires, humidité',
            'Packs' => array(
            )
        ),
    ),
);

使用foreach()对它们进行迭代:

foreach ($questions['question'] as $question) {
    var_dump($question);
}

或者:

$questions = array(
    array(
        'designignation' => 'Souhaitez-vous pouvoir contrôler votre bateau ?',
        'info' => '',
        'Packs' => array(
        )
    ),
    array(
        'designignation' => 'Souhaitez-vous contrôler les lumières?',
        'info' => '',
        'Packs' => array(
        )
    ),
    array(
        'designignation' => 'Souhaitez-vous plus de confort à bord?',
        'info' => 'Mesure de tempêratires, humidité',
        'Packs' => array(
        )
    ),
);

循环:

foreach ($questions as $question) {
    var_dump($question);
}