Innholdsfortegnelse:
Video: Building Dynamic Web Apps with Laravel by Eric Ouyang 2024
Mens sløyfen er den primære måten, unntatt en for sløyfe, med gjentakende kode i PHP. Som en HTML5 og CSS3 programmerer, kan det være ganger når du velger den ene over den andre, men det er viktig å forstå forskjellene mellom de to.
mens sløyfer er likt for sløyfer. De krever den samme tanken:
-
En sentrisk variabel: Denne spesielle variabelen styrer tilgangen til sløyfen. I motsetning til int som vanligvis brukes i for sløyfer, kan sentreren av en stundsløyfe være hvilken som helst type.
-
Initialisering: Angi startverdien til sentriske variabelen før sløyfen begynner. Ikke stole på standardinnstillinger (fordi du ikke vet hva de vil være). Sett i stedet denne verdien selv.
-
En betingelse: Mens utsagnet krever en tilstand. Denne tilstanden styrer tilgangen til sløyfen. Så lenge tilstanden er sant, fortsetter sløyfen. Så snart tilstanden er vurdert som falsk, avslutter sløyfen.
-
En modifikator: Du må på en eller annen måte endre verdien av sentriske variabelen. Det er viktig at endringsoppgaven skjer et sted inne i løkken. I en for loop, legger du nesten alltid til eller trekker bort for å endre en variabel. I en stundsløyfe kan en hvilken som helst oppgaveoppgave brukes til å endre variabelen.
for sløyfer er litt sikrere enn mens sløyfer fordi strukturen i sløyfen krever at du tenker på initialisering, tilstand og modifikasjon. Alle tre funksjonene er bygd inn i forklaringen. Denne utsagnet krever bare tilstanden. Dette kan få deg til å tro at du ikke trenger de andre delene, men det ville være farlig.
I hvilken som helst sløyfe må du initialisere sentriske variabelen og endre verdien. Med løpetidet er du ansvarlig for å legge til disse funksjonene selv. Hvis du ikke gjør det, vil det føre til uendelige løkker eller løkker som aldri skjer.
Ta en titt på følgende kode for tiden. php program for å se hvordan det fungerer:
mens. php img {høyde: 40px; bredde: 50px;}Dice Rolling Game 2
Velkommen til terningen rullende spill. Se hvor mange ruller det tar å få seks!
php $ userNumber = 999; $ teller = 0; mens ($ userNumber! = 6) {$ userNumber = rand (1, 6); skriv ut <<< HER HER; $ counter ++;} print "Det tok $ counter prøver å få en seks.
"; ? >Prøv igjen!
Dette eksemplet illustrerer hvordan subtile mens sløyfer kan være. Alle nøkkelelementene er der, men de ser ikke alle utseendet som en del av mensløkken.
-
Initialiser $ brukernummer.
For denne kretsen er $ userNumber den sentriske variabelen.Initialiseringen må garantere at løkken går nøyaktig en gang. Fordi tilstanden vil være ($ userNumber! = 6), må du gi $ userNumber en verdi som tydeligvis ikke er 6. 999 vil gjøre jobben, og den er villig nok til å være tydelig utenfor rekkevidde.
Selv om initialiseringstrinnet vises i koden før løkken, er det ofte best å starte med tilstanden din og deretter sikkerhetskopiere en linje for å initialisere fordi initialiseringstrinnet avhenger av tilstanden.
-
Still inn tilstanden.
Tenk på hva som skulle føre til at sløyfen fortsetter eller slutter. Husk at tilstanden forklarer når sløyfen fortsetter. Det er ofte lettere å tenke på hva som forårsaker sløyfen å gå ut av. Det er greit; bare reverser den. For eksempel, hvis du vil at sløyfen skal slutte når $ userNumber er lik 6, vil du få den til å fortsette så lenge som $ userNumber! = 6.
-
Endre sentreren.
Denne er vanskelig. I dette bestemte eksemplet, endre sentriske variabelen ved å få et nytt tilfeldig nummer: $ userNumber = rand (1, 6). Ofte om gangen er modifikasjonstrinnet iboende for problemet du løser. Noen ganger får du den nye verdien fra brukeren, noen ganger får du den fra en fil eller database, eller noen ganger legger du bare til (akkurat som en for loop).
Nøkkelen her er å sikre at du har en erklæring som endrer sentriske variabelen og at tilstanden kan utløse. For eksempel vil bruk av $ userNumber = rand (1, 5) resultere i en endeløs sløyfe fordi $ userNumber aldri kan være 6.
mens sløyfer kan forårsake mange problemer fordi de kan forårsake logiske feil. Det vil si at syntaksen (struktur og staving av koden) kan være bra, men programmet virker fortsatt ikke riktig. Nesten alltid kan problemet løses ved å tenke på de tre delene av en veloppdragen sløyfe: Initialiser sentreren, skape en meningsfylt tilstand, og modifiser sentreren på riktig måte.