Gå til innhold

Forstår ikke denne..


Anbefalte innlegg

Forsøker å lære meg noe PHP nå og leser i boken Beginning PHP fra Wrox. Har kommet til et eksempel i boken der det er en liten ting jeg ikke forstår:

 


$AgeAllowance = ($Age/10 - ($Age%10) / 10) -1;

 

Er ($Age%10) jeg ikke helt skjønner. Hva skjer her? Står noe om "Modulus" i boka..

Lenke til kommentar
Videoannonse
Annonse

$age%10 tilsier at hver gang du treffer tallet som står etter % tegnet så skjer det noe, det formen gjør er:

 

deler $age på 10

tar summen man får da minus antall ganger 10 går igjen i $age

deler summen man får da på 10

og tilslutt summen av alt over -1.

 


<?php

/*slang på noen extra linjer for å teste selv og kanskje vise bedre*/

$Age = $_GET['age'];

$AgeAllowance = ($Age/10 - ($Age%10) / 10) -1;

echo $AgeAllowance;

?>

Lenke til kommentar

Slenger på en forklaring jeg og. :smile:

 

Modulus-operatoren (%) finner restverdien av en divisjon.

 

Litt eksempel brøkregning:

 

15/10

= (10+5)/10

= 10/10 + 5/10

= 1 +5/10

= 1.5

 

Dvs. modulo 15%10 --> 5.

 

Koden

 


$AgeAllowance = ($Age/10 - ($Age%10) / 10) -1;

 

Sørger bare for å fjerne brøkdelen. I prinsippet gjør den det samme som:

 

$AgeAllowance = floor($Age/10) -1;

Lenke til kommentar

Så hvis $Age = 32 da blir det slik:

 

(32 / 10 - (32%10) / 10) - 1

(32 / 10 - (2) / 10) - 1

(3,2 - 0,2) - 1

2

 

 

Og hvis $Age = 57 blir det slik:

 

(57 / 10 - (57%10) / 10) - 1

(57 / 10 - (7) / 10) - 1

(5,7 - 0,7) - 1

4

 

 

??

 

*håpe*

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...