2009-04-26 6 views
0

У меня есть массив следующим образом:Справка по php-массиву. Получение правильного содержания

Array 
(
    [level] => Array 
     (
      [0] => Array 
       (
        [lvlName] => name 
        [lvlEnt] => ent 
       ) 

     ) 

    [title] => Array 
     (
      [0] => Array 
       (
        [title] => a title 
        [titleDesc] => desc here 
       ) 

     ) 

    [navBar] => Products 
    [pageContent] => About 
) 

Может кто-то пожалуйста, скажите мне, как получить PageContent?

Вот код, который я использую, но получаю неопределенные индексы. Я понятия не имею, где я ошибаюсь.

foreach($bigArr as $key=>$val) 
{ 
    if($key['pageContent'] != null) 
    { 
    foreach($val as $fkey=>$fval) 
    { 
     echo $fkey['pageContent']; 
    } 
    } 
} 

петли дают мне:

PHP Notice: Undefined index: pageContent 
PHP Warning: Invalid argument supplied for foreach() 

Может кто-то пожалуйста, дайте мне руку с этим? Спасибо

EDIT: Неверный аргумент - это то, что я озадачил.

ответ

2

Вы можете получить доступ к значению с помощью $bigArr['pageContent'].

+0

Я только что понял это. Когда я только что посмотрел, как был настроен массив, я мог очистить Посмотрите. Спасибо дружище! – 2009-04-26 09:23:09

2

Ваш первый звонок foreach дает вам две части данных за итерацию: ключ и значение. Ключ является строкой, а не массив (который является то, что вы пытаетесь использовать его как на линии 3.

Так на последней итерации для этого массива, $key будет содержать 'pageContent' и $val будет содержать «О»

в любом случае, использование Еогеасп за то, что вы делаете, кажется ненужным. вы можете сразу проверить, присутствует ли в массиве ключ «PageContent» с помощью array_key_exists(), а затем потяните значение перекоса.

if(array_key_exists('pageContent', $bigArr) && $bigArr['pageContent'] != null) 
{ 
    echo $bigArr['pageContent']; 
} 
+0

Эй, Стивен, очень спасибо за пример и помощь. Мне действительно нужно расширить список функций, и у array_key_exists это хорошо. Еще раз, спасибо! Том – 2009-04-26 09:31:02

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