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

Discussione: differenza tra 2 array

  1. #1

    differenza tra 2 array

    Allora ho 2 array (indicizzati) uno con 16000 ed uno con 5000 indirizzi email
    vorrei ottenere un array con la differenza, c'è una funzione già pronta e quindi performante oppure devo fare un ciclo? array_diff non funge.

    grazie
    --- [color= darkorange]L'uomo è il computer più straordinario di tutti [/color]----

    http://www.simogrima.com

    Grifone

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    in che senso "non funge"? serve proprio a quello... come sono fatti gli array (chiave=>indice)? e le 5000 sono tutte presenti nelle 16000 o alcune sì e altre no e devi recuperarle entrambe (forse è questo il problema, infatti)?

  3. #3
    Hai specificato "indicizzati", ciò vuol dire che gli indirizzi email sarebbero le chiavi dell'array?

  4. #4
    no gli indirizzi sono i valori difatti li recupero attraverso la funzione file(), io quindi ho
    array(
    0 => 'indirizzo1';
    1 => 'indirizzo2';
    2 => 'indirizzo3';
    ......
    );

    su entrambi i files
    --- [color= darkorange]L'uomo è il computer più straordinario di tutti [/color]----

    http://www.simogrima.com

    Grifone

  5. #5
    e allora dovrebbe andar bene array_diff

    posta un po' di codice in modo tale da arrivare subito al problema

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    Dovrebbe funzionare:

    codice:
    $array1 = (
      'mail1',
      'mail2',
      'mail3',
    );
    $array2 = (,
      'mail2',
    );
    
    $array_diff = array_diff($array1, $array2)
    
    = (
      'mail1',
      'mail3',
    )
    o non è questa la tua situazione?

  7. #7
    mi sa che sta facendo la differenza al contrario, forse basta switchare i parametri in array_diff

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    (dai docs ufficiali) gli elementi del risultato sono elementi del primo vettore passato come parametro ($array1 nell'esempio)

  9. #9
    esattamente
    Codice PHP:
    array array_diff ( array $array1 , array $array2 [, array $... ] ) 
    Restituisce un array contenente tutti gli elementi dell'array1 che non sono presenti in nessuno degli altri array.
    Quindi è possibile che stia switchando i parametri. Forse lui sta usando array_diff( 5000, 16000 )

  10. #10
    chiedo scusa...
    in effetti avevo invertito i parametri.
    Grazie tutti
    --- [color= darkorange]L'uomo è il computer più straordinario di tutti [/color]----

    http://www.simogrima.com

    Grifone

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.