Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: Array di Array

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    322

    Array di Array

    Ho 2 file di testo

    Il primo
    8 21 32 33 60 69 48 64

    Il secondo
    8,108,10,0,85.21,88,68,0,86.32,90,61,0,87 etc..

    Devo leggere entrambi i file, per ogni valore del primo.. ad esempio 8 crearmi delle variabili tipo

    $var[8][0] = 8
    $var[8][1] = 108
    $var[8][2] = 10
    $var[8][3] = 0
    $var[8][4] = 85

    $var[21][0] = 21
    $var[21][1] = 88
    $var[21][2] = 68
    $var[21][3] = 0
    $var[21][4] = 86

    Consigli sul come posso operare?

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    322
    Io ho provato con

    Codice PHP:
    for($i=0;$i<6;$i++) { 
    $var[$i] = explode(" ",$var[$i]); 
    $ext[$i] = explode(".",$ext[$i]); 

    for(
    $j=0;$j<90;$j++) { 
    $top[$j] = explode(",",$ext[$i][$j]); 

    E poi visualizzando i risultati con

    Codice PHP:
    echo $var[$i][2].$top[$var[$i][2]][0]; 
    E non ottengo risultato..
    Se metto invece ad esempio

    Codice PHP:
    echo $var[$i][2].$top[8][0]; 
    Lo ottengo..

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    322
    Sto cercando qualcosa in merito alle parentesi graffe.. ma per ora nn riesco

    C sto perdendo la testa.. non riesco a fare una array bidimensionale... sarà possibile?

  4. #4
    Codice PHP:
    <?php
    $str1 
    '8 21 32 33 60 69 48 64';
    $str2 '8,108,10,0,85.21,88,68,0,86.32,90,61,0,87';

    $keys   explode(' '$str1);
    $values explode('.'$str2);
    $output = array();

    for (
    $x 0$x count($values); $x++) {
        foreach (
    explode(','$values[$x]) as $val) {
            
    $output[$keys[$x]][] = $val;
        }
    }

    print_r($output);
    ?>

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    322
    Io fra un po' mi arrendo..
    Non capisco dove sbaglio

    Ho provato ad adattare il codice ottenendo codeste righe..

    Codice PHP:
    $str1 file('archivio.txt'); 
    $str2 file('stats.txt'); 
    $keys explode(' '$str1[0]); 
    $values explode('.'$str2[0]); 
    for (
    $x 0$x count($values); $x++) { 
    foreach (
    explode(','$values[$x]) as $val) { 
    $output[$keys[$x]][] = $val



    echo 
    $output[8][1];
    ?> 
    Ma non ottengo nessun risultato!

    Se invece uso il codice da te realizzato, funziona..
    Cosa sbaglio?

    $str1[0] = '8 21 32 33 60 69 48 64';
    $str2[0] = '8,108,10,0,85.21,88,68,0,86.32,90,61,0,87........ ';

  6. #6
    A me funziona

    Posta i file txt esattamente come sono.

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    322
    Alla fine ho rivoluzionato tutto..
    Ma mi ritrovo comunque il problema dell'array multidimensionale

    Ma non si utilizza $var[${$cat[$i]}] ?

    Io vorrei che se

    $var[15] = 2;

    e

    $cat[7] = 15;

    $var[$cat[7]] sia 2 ?!?!

  8. #8
    Originariamente inviato da ReWeNgE
    Alla fine ho rivoluzionato tutto..
    Ma mi ritrovo comunque il problema dell'array multidimensionale

    Ma non si utilizza $var[${$cat[$i]}] ?

    Io vorrei che se

    $var[15] = 2;

    e

    $cat[7] = 15;

    $var[$cat[7]] sia 2 ?!?!
    Infatti e' cosi', pero' non e' un array multidimensionale, usi solo il valore di un array come indice di un altro.

  9. #9
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    322
    Allora non capisco xkè non vada...
    Praticamente ho un array $value contenente i seguenti valori

    $value[0] = 8
    $value[1] = 21
    $value[2] = 32
    $value[3] = 33
    $value[4] = 60
    $value[5] = 69

    Vado a leggere la prima riga di un file di testo contenente

    8,107,13,11,38

    Vado a memorizzare i precedenti valori in un array

    Codice PHP:
    $var file('stats.txt');
    $var explode(".",$var[0]);
     for(
    $i=0;$i<90;$i++) {
     
    $var[$i] = explode(",",$var[$i]);
     } 
    Mi ritrovo che

    $var[8][0] = 8
    $var[8][1] = 107
    $var[8][2] = 13
    $var[8][3] = 11
    $var[8][4] = 38

    ora.. xkè se vado ad utilizzare

    Codice PHP:
    echo $var[${$value[0]}][1]; 
    non visualizzo niente?

  10. #10
    Codice PHP:
    $value[0] = 8;
    $var[8][1] = 107;
    echo 
    $var[$value[0]][1]; 

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