Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Ripulire un array....

  1. #1
    Utente di HTML.it L'avatar di freetom
    Registrato dal
    Nov 2001
    Messaggi
    3,725

    Ripulire un array....

    Ho un array "sporco"... del tipo:

    Array ( [0] => Array ( [0] => 1 [1] => 2 [2] => 3 ) [1] => Array ( [0] => 4 [1] => 5 [2] => 6 [3] => 7 ) [2] => Array ( [0] => 8 [1] => 9 ) [3] => Array ( [0] => 10 [1] => 11 [2] => 12 ) [4] => Array ( [0] => ) )


    per sorco intendo questi elementi arrays di arrays con un solo elemento e vuoto...:

    Array ( [0] => e...
    Array ( [0] => ) )


    Come faccio ad eliminarli? Per avere qualcosa di più pulito così?

    Array (Array ( [0] => 1 [1] => 2 [2] => 3 ) [1] => Array ( [0] => 4 [1] => 5 [2] => 6 [3] => 7 ) [2] => Array ( [0] => 8 [1] => 9 ) [3] => Array ( [0] => 10 [1] => 11 [2] => 12 ) ) )

    tnx


  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Cicla l'array e se gli elementi sono vuoti usi la funzione unset().

  3. #3
    Utente di HTML.it L'avatar di freetom
    Registrato dal
    Nov 2001
    Messaggi
    3,725

    Riprendo questo post perchè non mi rifunzia...

    Codice PHP:
    for ($i=0$i<count($arraycombinazioneuscita);$i++) {

    if (
    $arraycombinazioneuscita[$i]==" " || $arraycombinazioneuscita[$i]=="" || $arraycombinazioneuscita[$i]==null ) {

    unset(
    $arraycombinazioneuscita[$i]);

    }


    l'uoutput rimane sempre questo:

    Array ( [0] => 1 [1] => [2] => 2 [3] => [4] => 6 [5] => [6] => 8 [7] => [8] => 9 [9] => [10] => 15 [11] => [12] => 19 [13] => [14] => 27 [15] => [16] => 28 [17] => [18] => 30 [19] => [20] => 42 [21] => [22] => 48 [23] => [24] => 50 [25] => [26] => 54 [27] => [28] => 61 [29] => [30] => 71 [31] => [32] => 82 [33] => [34] => 85 [35] => [36] => 88 [37] => [38] => 90 )

    Ho evidenziato in grassetto uno degli elementi array vuoti che vorrei eliminare senza per adesso alcun esito positivo...

    Grazie x gli eventuali aiuti che vorrete darmi


  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Codice PHP:
    foreach ($array as $k => $v) {
          if (
    is_null($v) || trim($v)=='') {
            unset(
    $array[$k]);
          }
        } 

  5. #5
    Utente di HTML.it L'avatar di neroux
    Registrato dal
    Aug 2009
    Messaggi
    1,973
    Guarda su http://us.php.net/manual/en/function.array-values.php .... nei commenti parlano di array_flatten() che possa essere quello che vuoi.

    www.sitemeer.com » Quando un sito pare irraggiungibile

    Se ti piace ci puoi trovare anche su Facebook

  6. #6
    Utente di HTML.it L'avatar di freetom
    Registrato dal
    Nov 2001
    Messaggi
    3,725

    purtroppo non funzia nemmeno così...

    Originariamente inviato da nicola75ss
    Codice PHP:
    foreach ($array as $k => $v) {
          if (
    is_null($v) || trim($v)=='') {
            unset(
    $array[$k]);
          }
        } 


    Comunque grazie!

    ps: Sostituendo agli spazi della stringa iniziale delle lineette ottengo questo:

    PULITA??? 1 - -2 - -6 - -8 - -9 - -15 - -19 - -27 - -28 - -30 - -42 - -48 - -50 - -54 - -61 - -71 - -82 - -85 - -88 - -90

    pero' se tento di sostituire gli ulteriori spaziettini evidenziati con altrettante lineette o altro carattere... non ottengo alcun cambiamento...

    Come posso vedere di che carattere si tratta (es. \n=spazio) per poterlo poi sostituire o eliminare direttamente???

    Grazie ancora


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.