Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923

    chiarimento sintassi ciclo for

    Ciao a tutti. Qualcuno sarebbe così gentile da spiegarmi il funzionamento di un ciclo for del genere?

    L'ho trovato adesso cercando il sorgente della funzione str_ireplace.

    $replace = array ();
    for ($i = 0, $c = count($search); $i < $c; $i++) {
    $replace[$i] = $replace_string;
    }


    cosa significa la virgola tra $i e $c per il valore di partenza del ciclo?

  2. #2
    il for ha tre "campi", separati da punto e virgola.

    Nel primo e nell'ultimo puoi mettere tutte le istruzioni che vuoi, separate da virgola (per non creare conflitto con il punto e virgola richiesto nel for appunto).

  3. #3
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Originariamente inviato da skidx
    il for ha tre "campi", separati da punto e virgola.

    Nel primo e nell'ultimo puoi mettere tutte le istruzioni che vuoi, separate da virgola (per non creare conflitto con il punto e virgola richiesto nel for appunto).
    Scusa skidx ma non capisco. Fino ai 3 campi separati da punto e virgola ci sono.
    Magari per te è scontato ma per me che non l'avevo mai visto impostato così mi lascia un pò perplesso.

    Ad esempio, sarebbe stato diverso messo così?
    $c = count($search);
    for ($i = 0, $i < $c; $i++) {

  4. #4
    ah, nessuno dei tre campi è obbligatorio, puoi scrivere la stessa cosa di quel for così:
    $i = 0;
    $c = count($search);
    for(; $i < $c
    {
    ...
    $i++;
    }

    solo che a quel punto tanto vale usare un while, il vantaggio del for è proprio evitare la sintassi prolissa.

    edit: ho scritto senza leggere il tuo post ma credo di aver risposto alla tua domanda.

  5. #5
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Grazie per le spiegazioni. Sono ancora confuso però.
    Ricapitolando. Posso continuare a usare il ciclo for come ho sempre fatto e quello che ho appena visto è solo un modo "formale" diverso di rappresentarlo?

  6. #6
    Originariamente inviato da nicola75ss
    Grazie per le spiegazioni. Sono ancora confuso però.
    Ricapitolando. Posso continuare a usare il ciclo for come ho sempre fatto e quello che ho appena visto è solo un modo "formale" diverso di rappresentarlo?
    Sì, certo , scrivere in quel modo è esattamente come scrivere

    $c = count($search);
    for ($i = 0; $i < $c; $i++) {

    si risparmia una riga, tutto qua.

  7. #7
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Ok skidx. Ti ringrazio molto.
    Penso che continuerò ad essere prolisso visto che mi trovo meglio con la MIA sintassi.
    Grazie ancora.

  8. #8
    in genere si usa per accorpare al for qualche istruzione che è funzionale solo al for stesso, come in quel caso ($c serve solo per la condizione di uscita del for), ma alla fine è solo questione di gusti.

    Prego.

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.