2015-05-30 3 views
-5

я получил массив как этогоPHP Супер Еогеаспа многомерный массив

$specials = array(1 => array('word' => array('first', 'two', 'three'), 'digit' => array(1,2,3)), 
        2 => array('word' => array('four','five', 'six'), 'digit' => array(4,5,6)), 
        3 => array('word' => array('seven', 'eight', 'nine'), 'digit' => array(7,8,9)), 
        4 => array('word' => array('ten','eleven', 'twelve'), 'digit' => array(10,11,12)) 
        ); 

и почему я должен Foreach 3 раза, как это

foreach($specials as $val) { 
    foreach($val as $valData) { 
     foreach($valData as $value) { 
      echo $value.'<br/>'; 
     } 
    } 
} 

Но как петлю или Еогеасп правильно и с их именем индекса, как это ?

echo $value['word']; 
echo $value['digit']; 

я получил предупреждение об ошибке, если echo $value['digit']

Warning: Illegal string offset 'digit' in ~/public_html/test/array.php on line 58 

я нужны эти выходные для различных HTML и CSS каждое значение

<div class="digit"><?=$value['digit']?></div> <div class="word"><?=$value['word']?></div>

+1

Что ваш вопрос/проблема? Каков ваш текущий результат и что вы ожидаете? – Rizier123

+0

Мне нужно повторить другое имя индекса, echo $ value ['word'] или $ value ['digit'] not $ value как пример выше – haidarvm

+0

Что вы имеете в виду: * другое имя индекса *? Пожалуйста, добавьте свой текущий результат в свой вопрос + ожидаемый результат – Rizier123

ответ

1
foreach($specials as $val) { 
    foreach($val as $key => $valData) { 
     // $key is now either 'word' or 'digit' 
     foreach($valData as $value) { 
      echo "<div class='$key'>$value</div>"; 
     } 
    } 
} 
+0

Я не могу этого сделать .. Мне нужно использовать разные стили html и css

и
haidarvm

+0

@ coder5 Поскольку мы не знаем, вывод должен выглядеть так: почему вы не могли использовать значение '$ key' в приведенном выше примере для классов css? –

+0

ok thats, большое решение, почему многие комментарии просто спрашивают arround и не дают мне ответ: '( – haidarvm

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