2016-01-14 3 views
0

Я хотел бы иметь что-то подобное в мой массив (это пример):Массив, recieves данные в Еогеасп

[Mercedes] 
    [Classe A] 
     [220 CV] 
     [300 CV GTI] 
     ... 
    [Classe B] 
     ... 

Проблема заключается в том, что я должен использовать Еогеасп, чтобы получить эту информацию и я Не привык к этому.

Вот мой код:

foreach($aResultat['Domaines'] as $iDomaineKey => $aDomaineValue){ 

    $aResultat['DomaineUnique'][$iDomaineKey] = $this->Domaines->find($aDomaineValue['DOMAINE_ID']); // ID LIB DOMAINE 
    $aData['Domaines'][$iDomaineKey] = $aResultat['DomaineUnique'][$iDomaineKey][0]['DOMAINE_LIB']; // LIB DOMAINE 
    $aResultat['Lignes'] = $this->GrillesDomainesLignes->find($aParametresGrille, $aDomaineValue['DOMAINE_ID']); 

foreach($aResultat['Lignes'] as $iLigneKey => $aLigneValue){ 

    $aResultat['LigneUnique'][$iLigneKey] = $this->Lignes->find($aLigneValue['LIGNE_ID']); 
    $aData['Ligne'][$iLigneKey] = $aResultat['LigneUnique'][$iLigneKey][0]['LIGNE_LIB']; 
} 

Некоторая информация: find это функция, которая может получить что-либо из таблицы (ID или ID & LIB OF Domaine или Ligne в нашем случае)

Этот не работает, я думаю, что я не правильно использую ключи.

$ aResultat [ 'Domaines] такова:

[Domaines] => Array 
    (
     [0] => Array 
      (
       [0] => 1 
       [GRILLE_ID] => 1 
       [1] => 1 
       [DOMAINE_ID] => 1 
       [2] => 1 
       [ORDRE] => 1 
      ) 

      ... 

Для DomaineUnique:

[DomaineUnique] => Array 
    (
     [0] => Array 
      (
       [0] => Array 
        (
         [0] => 1 
         [DOMAINE_ID] => 1 
         [1] => TOTO 
         [DOMAINE_LIB] => TOTO 
        ) 
        ... 

А за $ aResultat [' Lignes']:

[Lignes] => Array 
    (
     [0] => Array 
      (
       [0] => 1 
       [GRILLE_ID] => 1 
       [1] => 1 
       [DOMAINE_ID] => 1 
       [2] => 1 
       [LIGNE_ID] => 1 
       [3] => 1 
       [ORDRE] => 1 
      ) 
      ... 

Domaine и Ligne являются ассоциативными. Пока DomaineUnique и LigneUnique - это настоящие таблицы с моей LIB.

My $ ADATA вернуть это:

$aDataArray 
(
[Domaines] => Array 
    (
     [0] => TOTO 
     [1] => TOTO 
     [2] => TOTO 
     [3] => TOTO 
    ) 

[Ligne] => Array 
    (
     [0] => TATA 
     [1] => TATA 
     [2] => TATA 
+0

Какой результат вы получите от вашего текущего кода? – Epodax

+0

Что такое содержимое массивов? '$ aResultat ['Domaines']' и '$ aResultat ['Lignes']' – mloureiro

+0

какой выход вы получаете? – devpro

ответ

0

В своем коде вы пропустили один }

foreach($aResultat['Domaines'] as $iDomaineKey => $aDomaineValue) { 

    $aResultat['DomaineUnique'][$iDomaineKey] = $this->Domaines->find($aDomaineValue['DOMAINE_ID']); // ID LIB DOMAINE 
    $aData['Domaines'][$iDomaineKey] = $aResultat['DomaineUnique'][$iDomaineKey][0]['DOMAINE_LIB']; // LIB DOMAINE 
    $aResultat['Lignes'] = $this->GrillesDomainesLignes->find($aParametresGrille, $aDomaineValue['DOMAINE_ID']); 
} // This one! 
foreach($aResultat['Lignes'] as $iLigneKey => $aLigneValue){ 

    $aResultat['LigneUnique'][$iLigneKey] = $this->Lignes->find($aLigneValue['LIGNE_ID']); 
    $aData['Ligne'][$iLigneKey] = $aResultat['LigneUnique'][$iLigneKey][0]['LIGNE_LIB']; 
} 
+0

Нет, это нормально, я думаю, я хотел, чтобы они были вложенными. –

+0

Означает ли ваш код какие-либо предупреждения? – Andrewus

+0

Ни одного. –

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