2013-10-05 3 views
0

У меня есть этот код:PHP создание «многомерный» массив

$mdArray = array(array()); 
$mdArray[0] = "1000"; 
$mdArray[0]["status"] = true; 

echo $mdArray[0]["status"]; 

По какой-то причине это не удается с: Предупреждение: Illegal строка смещения «статус»

Там ошибка возникает при попытке присвоить "true" в $ mdArray [0] ["status"] = "true";

Если у меня уже есть массив в массиве, хранящемся в переменной $ mdArray, то почему добавление ключа статуса к 0 приводит к ошибке?

+0

Вы просто не может иметь значение на уровне [0], а затем расширьте свой массив с более глубоким уровнем «статус». Вы перезаписываете значение. Вы можете сбросить массив с помощью инструкции 'print_r ($ array);', чтобы увидеть это. – Daniel

+0

Вместо true или false вы можете использовать 0 или 1. Ваша проблема будет решена. – Roopendra

ответ

1

потому что $ mdArray [0] не является массивом, он должен быть массив как

$mdArray = array(array()); 
$mdArray[0] = array("1000"); 
$mdArray[0]["status"] = true; 

echo $mdArray[0]["status"]; 
+0

скажите, поможет ли вам это или нет? –

0

Вы можете сделать таким образом

$mdArray = array(); 

$mdArray[0][] = "1000"; 
$mdArray[0]["status"] = true; 

echo $mdArray[0]["status"]; 
Смежные вопросы