一个在foreach中接收数据的数组

时间:2016-01-14 08:51:27

标签: php arrays foreach

我想在我的数组中有这样的东西(这是一个例子):

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

问题是我必须使用foreach来获取这些信息并且我不习惯它。

这是我的代码:

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是一个函数,可以从表格IDID& LIB OF DomaineLigne获取任何内容。

这不起作用,我想我没有正确使用这些键。

$ 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的真正表格。

我的$ aData返回此信息:

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

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

1 个答案:

答案 0 :(得分: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'];
}