Извлечь значения элементов вложенного массива

grow23

Новичок
Бьюсь уже весь день. Всем привет. Помогите понять как можно вытащить данные из многомерного масссива.
Пытаюсь вот так:
PHP:
$data[0][0-эта  цифра всегда меняется и неизвестно сколько всего таких элементов]['data2']);
Сам массив $data:

PHP:
$data = array(


'0' => array (

0 => array ('data2' => array (0 => 'значение 10',),),
1 => array ('data2' => array (0 => 'значение 12',),),
),
  

'1' => array (
 
0 => array ('data2' => array (0 => 'значение 13',),),
),

'3' => array (
 
0 => array ('data2' => array (0 => 'значение 14',),),
),
 и т.д.
Суть вопрос заключается в следующем: как получить только: значение 19, значение 12 - хотя бы эти два из первого $data[0] вложенного массива?
 

Фанат

oncle terrible
Команда форума
PHP:
foreach( $data[0] as $arr) {
    echo $arr['data2'][0];
}
если я правильно понял.

А откуда берется такой диковинный массив?
 

grow23

Новичок
PHP:
foreach( $data[0] as $arr) {
    echo $arr['data2'][0];
}
если я правильно понял.

А откуда берется такой диковинный массив?
сработало.. то что нужно.. благодарю
только ругается на :
PHP:
Fatal error: Cannot use string offset as an array in  on line 1
Сам составил.. Понимаю, массив нагроможденный, а опыта нет, чтобы оптимизировать как то...
 

Фанат

oncle terrible
Команда форума
у тебя другая структура массива.
скопируй сюда вывод
PHP:
echo '<pre>';var_dump($data);
А из чего составлял-то? Откуда данные?
И почему не спрашиваешь, как оптимизировать?
 

grow23

Новичок
у тебя другая структура массива.
скопируй сюда вывод
PHP:
echo '<pre>';var_dump($data);
А из чего составлял-то? Откуда данные?
И почему не спрашиваешь, как оптимизировать?
Спрашиваю: как оптимизировать? )

Засунул в твой фореач вот это:
PHP:
echo '<pre>';var_dump($data);
и получил:
PHP:
array(3) {
  [0]=>
  array(3) {
    ["Прирост"]=>
    array(1) {
      [0]=>
      string(7) "5000 р."
    }
    ["Стартовая сумма"]=>
    array(1) {
      [0]=>
      string(8) "10000 р."
    }
    ["ФИО"]=>
    array(1) {
      [0]=>
      string(20) "Иванов Иван Иванович"
    }
  }
  [1]=>
  array(3) {
    ["Прирост"]=>
    array(1) {
      [0]=>
      string(7) "1000 р."
    }
  ["Стартовая сумма"]=>
    array(1) {
      [0]=>
      string(6) "500 р."
    }
  ["ФИО"]=>
    array(1) {
      [0]=>
      string(20) "Иванов Иван Петрович"
    }
  }
  [2]=>
.......
[0]=>
[1]=>
[2]=>

у меня это годы: 2012, 2011, 2010 ну структура ясна вроде..
 

keltanas

marty cats
Тада так попробуй:
PHP:
print join(',', array_map(function($val){
    return $val[0];
}, $data[0]));
 
Сверху