2015-03-09 2 views
0

Я пытаюсь получить программу php для создания многомерного массива из данных в другом массиве.«Неопределенные ошибки смещения» php многомерный массив

$n = 13; 
while($n <=22){ 
    $itemName = $outputFields['FLD_'+ $n +'_002']['value']; 
    $itemUM = $inputFields['FLD_'+ $n +'_029']['value']; 
    $itemUnits = $inputFields['FLD_'+ $n +'_032']['value']; 
    $itemUnitsPrice = $outputFields['FLD_'+ $n +'_045']['value']; 
    $itemExtendedPrice = $outputFields['FLD_'+ $n +'_060']['value']; 
    $itemLT = $outputFields['FLD_'+ $n +'_076']['value']; 
    $arrItems[$itemName][$itemUM][$itemUnits][$itemUnitsPrice][$itemExtendedPrice][$itemLT] = true; 
    $n++; 
} 

Идеи конечный результат должен быть примерно так:

Array 
(
    [13] => Array 
     (
      [itemName] 
      [itemUM] 
      [itemUnits] 
      ... 
     ) 
    ... 
    [22] => Array 
     (
      [itemName] 
      [itemUM] 
      [itemUnits] 
      ... 
     ) 
) 

В настоящее время получает "неопределенная смещенной" ошибка.

+0

Undefined смещение происходит при попытке доступа к элементу в массиве, который ключ не выходит. вы можете использовать 'isset ($ arr ['key'])', чтобы проверить, существует ли ключ .or not –

ответ

0

Попробуйте этот код: Ошибка

$n = 13; 
while($n <=22){ 
    $arrItems[$n]['itemName'] = $outputFields['FLD_'. $n .'_002']['value']; 
    $arrItems[$n]['itemUM'] = $inputFields['FLD_'. $n .'_029']['value']; 
    $arrItems[$n]['itemUnits'] = $inputFields['FLD_'. $n .'_032']['value']; 
    $arrItems[$n]['itemUnitsPrice'] = $outputFields['FLD_'. $n .'_045']['value']; 
    $arrItems[$n]['itemExtendedPrice'] = $outputFields['FLD_'. $n .'_060']['value']; 
    $arrItems[$n]['itemLT'] = $outputFields['FLD_'. $n .'_076']['value']; 
    $n++; 
} 
+0

, когда я делаю print_r, структура распечатана отлично, но поля пусты. все еще получая неопределенную ошибку смещения. что переменные имели контент через echo $ inputFields ['FLD_13_029'] ['value'], там есть контент. –

+0

Пропущено ... Используйте dot - '.', чтобы объединить ваши строки. Отредактировал мой ответ. – wins

+0

спасибо! работал как шарм! –

Смежные вопросы