Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Problemino con il carattere ";" punto e virgola

    Allora a me serviva leggere dei dati da file txt. E fin qui ho risolto. Ora però, considerando che i dati nel file txt, che sarebbe un .log, sono memorizzati in questo modo:

    codice:
    dato1;dato2;dato3;dato4
    come posso dirgli che ogni punto e virgola vada a capo? O meglio come dire che ogni punto e virgola mi considera un dato nuovo che poi inserirò in database.

    Thanks

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    1,141
    se gli fai l'explode?

    Codice PHP:
    $str "dato1;dato2;dato3;dato4";
    $exp explode(";",$str);
    print_r($exp); 
    poi basta che ti scorri l'array $exp e inserisci singolarmente ogni record, o cmq fai le operazioni che devi fare su ognuno...

    ciao

  3. #3
    Perfetto riesco a leggere l'array e a posizionare i vari dati separatamente.

    Adesso come passo successivo io ho una stringa di questo tipo:

    codice:
    dato1;dato2;dato1;dato2;
    e devo fare in modo che ogni tot dati conti un'altra array da posizionare nella riga successiva...

    Spero di essermi spiegato bene ^^


  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    1,141
    guarda se ti va bene una cosa del genere:
    Codice PHP:
    //tua stringa
    $str "dato1;dato2;dato3;dato4;";
    $arr explode(";",substr($str,0,strlen($str)-1));

    /*
    'Spezzo' l'array creato in 'sotto-array' di dimensione N(in questo esempio ho messo la dimensione a 2):
    creo un array multidimensionale
    */
    $newArr array_chunk($arr,2);

    //Ti stampo l'array risultante
    echo"<pre>";
    print_r($newArr);
    echo
    "</pre><hr>";


    //Per estrapolare i dati
    for($i=0$i <count($newArr); $i++)
     for(
    $j=0$j<count($newArr[$i]); $j++)
       echo 
    $newArr[$i][$j]."
    "

    prova, magari ci sono anche soluzioni + brevi e + semplici, ma ora non mi viene in mente altro...

    ciao

  5. #5
    Ok riesco a leggere tutto bene. Però mi servirebbe che ogni tot dati passo ad un'altra riga cioè:

    codice:
    <table cellpadding="0" cellspacing="0">
     <tr>
    <?
    for($i=0; $i <count($newstring); $i++)
    
     for($j=0; $j<count($newstring[$i]); $j++)
    
    //Stampo il risultato del ciclo
    
       echo "<td>". $newstring[$i][$j] ."</td>";
    
    ?>
     </tr>
    </table>
    in questo ciodice io ho i dati tutti incolonnati in una stessa riga (<tr>).
    A me serve, ogni tot dati, cambiare riga.

    Thanks

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    1,141
    codice:
    <table cellpadding="0" cellspacing="0">
     
    <?
    for($i=0; $i <count($newstring); $i++)
    {
      echo "<tr>";
    	 for($j=0; $j<count($newstring[$i]); $j++)
    	 {
    	   echo "<td>". $newstring[$i][$j] ."</td>";
    	 } 
      echo "</tr>";
    }
    ?>
    </table>

    ciao

  7. #7
    Grazie davvero ^_^

    Proprio quello che mi serviva. Cmq adesso oltre ad applicare il codice me lo studio per bene così da entrare nella logica del PHP sempre più

    Ciau

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.