Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Инициализация многомерного массива


Автор: maxipub 23.4.2014, 13:11
Добрый день!

Код
<?php

$_arr = array();

$_arr[] = '1';
$_arr[] = '2';
$_arr[] = '3';

?>


Получаем эквивалент:

Код
<?php

$_arr = array();

$_arr[0] = '1';
$_arr[1] = '2';
$_arr[2] = '3';

?>


А можно как-то так:

Код
<?php

$_arr = array();

$_arr[]['q'] = '1';
$_arr[]['w'] = '2';
$_arr[]['e'] = '3';

$_arr[]['q'] = '4';
$_arr[]['w'] = '5';
$_arr[]['e'] = '6';

?>


Чтобы было эквивалентно:

Код
<?php

$_arr = array();

$_arr[0]['q'] = '1';
$_arr[0]['w'] = '2';
$_arr[0]['e'] = '3';

$_arr[1]['q'] = '4';
$_arr[1]['w'] = '5';
$_arr[1]['e'] = '6';

?>


??? smile

Автор: baldina 23.4.2014, 14:14
maxipub, эти два фрагмента не эквивалентны. вам лень 0 и 1 писать или еще в чем-то дело?
можно, например, так
Код

$a=[];
array_push ($a,['q'=>1,'w'=>2,'e'=>3]);
array_push ($a,['q'=>4,'w'=>5,'e'=>6]);
// или
$a[]=['q'=>1,'w'=>2,'e'=>3];
$a[]=['q'=>4,'w'=>5,'e'=>6];

объясните, точнее, чего добиваетесь

Автор: maxipub 23.4.2014, 15:11
Цитата(baldina @  23.4.2014,  14:14 Найти цитируемый пост)
эти два фрагмента не эквивалентны

Серьезно? smile smile 

Цитата(baldina @  23.4.2014,  14:14 Найти цитируемый пост)
вам лень 0 и 1 писать или еще в чем-то дело?

Дело в том, что инициализация происходит в цикле, до этого для индекса использовал инкрементальную переменную, мозолила глаза только.

Спасибо! smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)