Visualizzazione dei risultati da 1 a 7 su 7

Discussione: il ciclo foreach

  1. #1

    il ciclo foreach

    ..non lo capisco proprio! ho visto molto tutorial sul web italiano ma ancora nn ho capito come si usa anche se ho capito la funzione che assume. qualcuno cede un 1minuto del suo tempo a spiegarmelo?
    "Voglio diventare il re dei pirati"

  2. #2
    in che senso non l'hai capito???? :master:


    scorre gli elementi di un array uno per uno e li assegna ad una variabile (il valore nell'array) oppure a una coppia di variabili (chiave dell'elemento e valore):


    codice:
    $array = array('pippo','pluto','paperino');
    
    foreach ($array as $valore) {
    echo $valore."
    \n";
    }
    stampa:
    pippo
    pluto
    paperino

    oppure
    codice:
    $array = array('pippo','pluto','paperino');
    
    foreach ($array as $chiave=>$valore) {
    echo $chiave.': '.$valore."
    \n";
    }
    stampa:
    0: pippo
    1: pluto
    2: paperino

    alla fine del ciclo il puntatore, con foreach, si trova di nuovo all'inizio dell'array!

    chiaro?!?!?!?

    r@p

  3. #3
    Utente di HTML.it L'avatar di aserena
    Registrato dal
    Feb 2003
    Messaggi
    310
    E' un ciclo ideale per sfogliare un array.Qui trovi delle info abb esaustive, con esempi documentati. Ciao
    La (!) è quella roba che in autunno si intristisce... perche': seccano i piselli, migrano gli uccelli, cadono i marroni, e se poi c'è anche la nebbia non si vede più un caXXo!! by Piero.mac @07/05

  4. #4
    Utente di HTML.it L'avatar di luke83
    Registrato dal
    Jul 2000
    Messaggi
    1,217
    dubito di poter essere più chiaro di chi mi abbia preceduto... essenzialmente hai due modalità per usare il foreach, con e senza chiave dell'array vediamo insieme n'esempio...

    supponiamo di avere un array del tipo:

    Codice PHP:
    <?
    $disney
    =array('topo'=>"mickey mouse",
    'topa'=>"minnie",
    'papero'=>"duffy duck");
    ?>
    ora supponiamo che tu voglia visualizzare semplicemente i personaggi:
    Codice PHP:
    <?
    foreach($disney as $personaggio)
    echo 
    $personaggio."
    "
    ;
    ?>
    lui ti stampa:

    codice:
    mickey mouse
    minnie
    duffy duck
    invece con:
    Codice PHP:
    <?
    foreach($disney as $animale $personaggio)
    echo 
    $personaggio."(".$animale.")
    "
    ;
    ?>
    lui ti stampa:

    codice:
    mickey mouse (topo)
    minnie (topa)
    duffy duck (papero)
    scorre in pratica l'array e ad ogni giro ti recupera l'elemento o l'elemento e la chiave, passandoli in variabili da te utilizzabili nel codice...

    ..::Luca::..
    » "se nn riesci a venirene a capo.. usa il tasto INVIO" © 2005 Luke83
    » "letta la documentazione, spazio all'immaginazione.." © 2006 Luke83
    [frasi random] - [Lucopedia] - [laFetta]

  5. #5
    come posso, invece di stampare, inserire l'elemento in un nuovo array?

    es:

    codice:
    foreach($disney as $personaggio) 
        METTI $personaggio dentro il nuovo $ARRAY2.

    grazie
    1,2,3,4,5,10,100 passi!

  6. #6
    Utente di HTML.it L'avatar di luke83
    Registrato dal
    Jul 2000
    Messaggi
    1,217
    dipende da quello che ci vuoi fare

    Codice PHP:
    <?
    foreach($disney as $personaggio)
        
    $new[] = $personaggio;
    ?>
    ottieni l'equivalente di fare:
    [php]
    new[0]=array("topo"=>"mickey");
    ..
    new[2]=array("papero"=>"duffy");
    [php]


    facendo invece così:

    Codice PHP:
    <?
    foreach($disney as $animale => $personaggio)
        
    $new[$animale] = $personaggio;
    ?>
    ottieni l'equivalente di fare:
    [php]
    new["topo"] = "mickey";
    ..
    new["papero"]= "duffy";
    [php]


    ..::Luca::..
    » "se nn riesci a venirene a capo.. usa il tasto INVIO" © 2005 Luke83
    » "letta la documentazione, spazio all'immaginazione.." © 2006 Luke83
    [frasi random] - [Lucopedia] - [laFetta]

  7. #7
    grazie mille!

    byez
    1,2,3,4,5,10,100 passi!

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.