2016-03-16 4 views
0

Вот мой JSON файл:Несколько массивов после экспорта из json?

{"settings":{"name":"pracamojanowa","owner":"kaitek666","id":"AhuJagUjAHu8"}} 

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

$data2['settings']['owner'][$_SESSION['user']]; 

Я получаю false возврата и сообщение об ошибке:

Предупреждение: Illegal строка смещения 'kaitek666' в C: \ XAMPP \ HTDOCS \ тест \ Логин \ home.php на линии 84

Это было немного странно для меня, но мой print_r экспортироваться массив выглядит немного необычно, а также:

Array ([settings] => Array ([name] => pracamojanowa [owner] => kaitek666 [id] => AhuJagUjAHu8)) 

Мне нужно получить доступ к значению owner и приведенному выше PHP-коду для возврата true.

+0

Как вы наполнение 'data2' массив? 'owner' имеет строковое значение, и попытка получить' '' _SESSION ['user'] '-й элемент этой строки выбрасывает вашу ошибку из внешнего вида вещей. – adamdc78

ответ

3
$data2['settings']['owner'] 

Содержит значение владельца.

Пользуясь $data2['settings']['owner'][$_SESSION['user']];, вы пытаетесь обрабатывать строку "kaitek666" как массив, следовательно ошибку.

Если вы просто хотите, чтобы стоимость владельца $data2['settings']['owner'] будет содержать то, что вы хотите. если вы хотите, чтобы проверить, если владелец соответствует значению user в $_SESSION затем сделать:

if($data2['settings']['owner'] === $_SESSION['user']){ 
    echo "Owner match!"; 
}else{ 
    echo "Owner does not match!"; 
} 
+0

Теперь я вижу свою ошибку. Я понятия не имею, чего хочу. Ценила много! – Kajcioch

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