PHP :: не может получить все значения внутри массива

Вот мой простой код:

<?php

$components=array(
1 => 'Carrot', 'Apple', 'Orange',
2 => 'Boiled Egg', 'Omelet',
3 => 'Ice Cream', 'Pancake', 'Watermelon'
);

echo'<pre>';
var_dump($components);
echo'</pre>';

выход :

array(6) {
[1]=>
string(6) "Carrot"[2]=>
string(10) "Boiled Egg"[3]=>
string(9) "Ice Cream"[4]=>
string(6) "Omelet"[5]=>
string(7) "Pancake"[6]=>
string(10) "Watermelon"}
  1. Где 'Apple' & 'Orange' ?
  2. Почему я не могу получить определенное значение из (например: $ components [1] [2] = ‘r’): / Почему ?!

-1

Решение

Сделайте массив, как это,

$components=array(
1 => ['Carrot', 'Apple', 'Orange'],
2 => ['Boiled Egg', 'Omelet'],
3 => ['Ice Cream', 'Pancake', 'Watermelon']
);

А теперь проверь свой массив.

3

Другие решения

Вы должны организовать свой массив следующим образом:

$components = array(
1 => array(
1 => 'Carrot',
2 => 'Apple',
3 => 'Orange'
),
2 => array(
1 => 'Boiled Egg',
2 => 'Omelet'
),
3 => array(
1 => 'Ice Cream',
2 => 'Pancake',
3 => 'Watermelon'
),
);

Тогда вы сможете получить: $components[1][2] = 'Apple'

2

Исходя из заданного вами синтаксиса, он формирует одномерный массив, а не многомерный массив.

Попробуй это:

$components=array(
1 => array('Carrot', 'Apple', 'Orange'),
2 => array('Boiled Egg', 'Omelet'),
3 => array('Ice Cream', 'Pancake', 'Watermelon')
);
1

Вы можете использовать строку в индексе массива

 <?php
$components=array(
1 => ['Carrot', 'Apple', 'Orange'],
2 => ['Boiled Egg', 'Omelet'],
3 => ['Ice Cream', 'Pancake', 'Watermelon']
);

echo "<pre>";
print_R($components);

?>

0
По вопросам рекламы [email protected]