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

    Rimuovere valori da un array mantenendo chiavi numeriche progressive

    Ciao a tutti.
    Ho un semplice array fatto in questo modo:

    Codice PHP:
    $arr=array(
        
    0=>'bianco',
        
    1=>'giallo',
        
    2=>'verde',
        
    3=>'blu',
        
    4=>'rosso',
        
    5=>'nero'
    ); 

    Ora, avrei bisogno di eliminare dall'array alcuni valori, mantenendo tuttavia le chiavi in ordine numerico crescente e progressivo.
    Se, ad esempio, dovessi eliminare dall'array il colore 'blu', facendo

    Codice PHP:
     unset($arr[3]); 

    otterrei:

    Codice PHP:
    $arr=array(
        
    0=>'bianco',
        
    1=>'giallo',
        
    2=>'verde',
        
    4=>'rosso',
        
    5=>'nero'
    ); 

    Tuttavia avrei bisogno che, a ogni rimozione, le chiavi successive a quella rimossa (in questo caso 4 e 5) scalassero tutte di 1, mantenendo inalterato l'ordine dei valori rimanenti, in modo da ricavare questo risultato:

    Codice PHP:
     $arr=array(
        
    0=>'bianco',
        
    1=>'giallo',
        
    2=>'verde',
        
    3=>'rosso',
        
    4=>'nero'
    ); 

    Qual è la soluzione più semplice per ottenere questo?
    «Prendo rifugio nel grande BOH»

  2. #2
    Utente di HTML.it L'avatar di boots
    Registrato dal
    Oct 2012
    Messaggi
    1,626
    Codice PHP:
    array_splice($arr31); // 3 è l'indice, 1 il numero di elementi 
    Vengono rinizializzati solo gli indici numerici

  3. #3
    Quote Originariamente inviata da boots Visualizza il messaggio
    Codice PHP:
    array_splice($arr31); // 3 è l'indice, 1 il numero di elementi 
    Vengono rinizializzati solo gli indici numerici

    Non conoscevo questa funzione, grazie mille!!
    «Prendo rifugio nel grande BOH»

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.