Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Array "ricorsivi"

  1. #1

    Array "ricorsivi"

    Ciao a tutti,
    ecco il mio quesito, un po' complesso, sembra un test scolastico, ma in realtà non lo è...

    I dati di partenza sono essenzialmente 2:

    1. Un array come il seguente, che contiene le righe provenienti da una query sul DB e chiameremo $array_mono_dimensionale
    Codice PHP:
    id_m id_g valori
    -----+------+--------
      
    1  |   a  |  777
      2  
    |   b  |  888
      1  
    |   c  |  999
      1  
    |   d  |  333
      2  
    |   c  |  222 
    Questo array è caratterizzato da N "campi chiave" (sopra sono i primi due campi: "id_m" e "id_g") e 1 "campo dei valori" (nell'esempio si chiama "valori").

    2. L'array dei campi chiave, che contiene i nomi dei "campi chiave", che chiameremo $array_chiavi:
    $array_chiavi = array("id_m","id_g");

    Il mio scopo è di farlo diventare un array multidimensionale, che risulti così (e chiameremo $array_multidimensionale:

    Codice PHP:
    $array_multi_dimensionale = array(
       [
    1] = array(
               [
    a] = 777,
               [
    c] = 777,
               [
    d] = 333
              
    ),
       [
    2] = array(
               [
    b] = 888,
               [
    c] = 222
              
    )
    ); 
    In questo caso (2 "campi chiave") l'array ha 2 sole dimensioni.
    Nel caso i "campi chiave" fossero 3, ci sarebbero 3 dimensioni, nel caso di 4 campi chiave 4 dimensioni, ecc. ecc..

    Dovrei creare (se già non esiste...) una funzione che crei l'array multidimensionale, partendo dall'array monodimensionale e dall'array dei campi chiave, qualcuno di voi è in grado di aiutarmi??


  2. #2
    Codice PHP:
    $cella["1a"]=777;
    $cella["1b"]=888;
    $cella["1c"]=999;
    $cella["2a"]=222;
    $cella["2b"]=444
    Come lo vedi?

  3. #3
    Ti ringrazio per il tentativo, ma è piu complesso.

    Mi serve una funzione cosi:

    Codice PHP:
    function mono_to_multi($array_monodimensionale$array_campi_chiave) {
       
    // calcola l'array multidimensionale

       
    return $array_multidimensionale;


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 © 2024 vBulletin Solutions, Inc. All rights reserved.