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

    Eliminare elemento da un array

    Ciao gente, ma come si elimina un elemento in mezzo ad un array??
    .: Teju.it - Una vita da raccontare
    .: 8s8.it - Wordpress gratis per tutti
    .: Vado.li - Accorcia URL

  2. #2

    Re: Eliminare elemento da un array

    Originariamente inviato da teju
    Ciao gente, ma come si elimina un elemento in mezzo ad un array??
    unset($array['var']);

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3

    Re: Re: Eliminare elemento da un array

    Originariamente inviato da piero.mac
    unset($array['var']);
    Come vengono gestiti i valori dell'array?
    Tipo se elimino il valore [4], e ho un valore in [5], questo in 5 scende a 4 o no?
    Mi son spiegato?
    .: Teju.it - Una vita da raccontare
    .: 8s8.it - Wordpress gratis per tutti
    .: Vado.li - Accorcia URL

  4. #4

    Re: Re: Re: Eliminare elemento da un array

    Originariamente inviato da teju
    Come vengono gestiti i valori dell'array?
    Tipo se elimino il valore [4], e ho un valore in [5], questo in 5 scende a 4 o no?
    Mi son spiegato?
    certo che no. Gli altri indici rimangono quelli che sono. Se vuoi riordinare un indice numerico puoi usare sort().

    ecco un esempio:

    Codice PHP:
    <?php

    $pippo 
    = array('a''b''c''d''e');

    echo 
    "<pre>";
    print_r($pippo);

    unset(
    $pippo[2]);

    print_r($pippo);

    sort($pippo);

    print_r($pippo);

    ?>
    prova a vedere che succede....

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Uhm... non va mica troppo...

    Ti spiego: mi arriva nella pagina una variabile in GET chiamata "data".
    Se questa data non è presente nella $_SESSION['date'] ce la aggiunge, altrimenti deve eliminarla.

    Ho questo codice, ma non va la parte di eliminazione...

    Codice PHP:
    if(isset($_GET['data'])){
        if(@!
    in_array($_GET['data'], $_SESSION['date'])){
            
    // inserisci in array
            
    $_SESSION['date'][$_SESSION['date_conta']]=$_GET['data'];
            
    $_SESSION['date_conta']++;
        }
        else{
            
    // elimina dall'array
            
    $j=0;$j--;
            do{
                
    $j++;
            }while(
    $_SESSION['date'][$j]==$_GET['data']);
            unset(
    $_SESSION['date'][$j]);
            
    sort($_SESSION['date']);
        }

    Appunto: l'inserimento è più che corretto, il problema è che non elimina nulla, oppure certe volte elimina il valore non corretto...
    Un suggerimento?
    Grazie
    .: Teju.it - Una vita da raccontare
    .: 8s8.it - Wordpress gratis per tutti
    .: Vado.li - Accorcia URL

  6. #6
    Originariamente inviato da teju
    Uhm... non va mica troppo...
    Boh! tu hai fatto una domanda e io ti ho dato una risposta. tutto qui.

    quel codice che hai messo ora va valutato in un contesto piu' ampio. Visto cosi' non dice granche', specie se non si ha idea delle valorizzazioni degli array interessati.

    rivedi comunque quel do ... while che si attiva con l'else. forse ti manca un if....

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    Nessun altro riesce a darmi una mano??

    Se infatti al posto di $pippo metti $_SESSION la funzione usata è identica a quella che mi hai suggerito tu... ma non va.. e non penso sia questione di vedere più in generale la pagina, infatti la $_SESSION['date'] è gestita unicamente da questa funzioncina, non ha altri richiami nella pg...
    .: Teju.it - Una vita da raccontare
    .: 8s8.it - Wordpress gratis per tutti
    .: Vado.li - Accorcia URL

  8. #8
    Originariamente inviato da teju
    Nessun altro riesce a darmi una mano??

    Se infatti al posto di $pippo metti $_SESSION la funzione usata è identica a quella che mi hai suggerito tu... ma non va.. e non penso sia questione di vedere più in generale la pagina, infatti la $_SESSION['date'] è gestita unicamente da questa funzioncina, non ha altri richiami nella pg...
    rivedi il do while...

    che vuol dire questo codice?

    while($_SESSION['date'][$j]==$_GET['data']);

    poi:

    $pippo al posto di $_SESSION non e' per nulla la stessa cosa. $_SESSION con indice associativo ed e' un array multidimensionale. $pippo un semplice array numerico.

    Vedi il manuale per scegliere cose effettivamente puo' esserti utile.

    http://it.php.net/manual/it/function.sort.php

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.