Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2002
    Messaggi
    378

    Rimuovere un record da un array multidimensionale

    Salve,
    ho il seguente array $menusTopUser,
    dove ho la necessita visualizzare solo i record che corrispondo alle seguenti condizioni:

    1) $menuTopUser['MenusUserGroup'] è vuoto;
    2) $menuTopUser['MenusUserGroup']['user_group_id'] è uguale a $this->Auth->user('UserGroup.id')


    Codice PHP:
    Array(
    [
    0] => Array
        (
            [
    Menu] => Array
                (
                    [
    title] => Offerte e modulistica promoter
                    
    [url] => 
                    [
    target] => _self
                    
    [id] => 11
                
    )

            [
    Item] => Array
                (
                    [
    slug] => offerte-e-modulistica-promoter
                    
    [id] => 36
                
    )

            [
    Language] => Array
                (
                    [
    ISO-639-2] => ita
                    
    [id] => 1
                
    )

            [
    TemplateRegion] => Array
                (
                    [
    id] => 10
                
    )

            [
    MenusUserGroup] => Array
                (
                )

        )

    [
    1] => Array
        (
            [
    Menu] => Array
                (
                    [
    title] => Offerte e modulistica agenti
                    
    [url] => 
                    [
    target] => _self
                    
    [id] => 10
                
    )

            [
    Item] => Array
                (
                    [
    slug] => offerte-modulistica
                    
    [id] => 29
                
    )

            [
    Language] => Array
                (
                    [
    ISO-639-2] => ita
                    
    [id] => 1
                
    )

            [
    TemplateRegion] => Array
                (
                    [
    id] => 10
                
    )

            [
    MenusUserGroup] => Array
                (
                    [
    0] => Array
                        (
                            [
    id] => 7
                            
    [menu_id] => 10
                            
    [user_group_id] => 5
                        
    )

                )

        )

    [
    2] => Array
        (
            [
    Menu] => Array
                (
                    [
    title] => Gestione contratti
                    
    [url] => 
                    [
    target] => _self
                    
    [id] => 13
                
    )

            [
    Item] => Array
                (
                    [
    slug] => 
                    [
    id] => 
                )

            [
    Language] => Array
                (
                    [
    ISO-639-2] => ita
                    
    [id] => 1
                
    )

            [
    TemplateRegion] => Array
                (
                    [
    id] => 10
                
    )

            [
    MenusUserGroup] => Array
                (
                    [
    0] => Array
                        (
                            [
    id] => 10
                            
    [menu_id] => 13
                            
    [user_group_id] => 5
                        
    ),
                    [
    1] => Array
                        (
                            [
    id] => 11
                            
    [menu_id] => 13
                            
    [user_group_id] => 4
                        
    )


                )

        ) 
    Dopo svariati tentativi ho prodotto il seguente codice ma senza risultati sperati, potete dargli un occhiata per favore?

    Codice PHP:

    foreach ($menusTopUser as $k => $menuTopUser) {

                    if (!empty(
    $menuTopUser['MenusUserGroup'])) {
                        
    $userOk false;
                        foreach (
    $menuTopUser['MenusUserGroup'] as $menuTopUserJ) {

                            if (
    $menuTopUserJ['user_group_id'] == $this->Auth->user('UserGroup.id')) {
                                
    //   pr($menuTopUserJ);
                                
    $userOk true;
                            }
                        }
                        if(!
    $userOk) unset($menuTopUser[$k]);
                    }
                }
                
    pr($menusTopUser);
                
    $this->set(compact('menusTopUser')); 
    Basta vivere,
    basta amare ogni momento
    e non porsi alcuna domanda
    sul momento che verrà

  2. #2
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Credo che dovresti fare l'unset su $menusTopUser[$k]

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2002
    Messaggi
    378
    Grazie mille!
    Basta vivere,
    basta amare ogni momento
    e non porsi alcuna domanda
    sul momento che verrà

  4. #4
    IP-PBX management: http://www.easypbx.it

    Old account: 2126 messages
    Oldest account: 3559 messages

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.