iChristian Skrevet 9. juni 2006 Del Skrevet 9. juni 2006 Jeg har en liten tid nå tenkt på et script som viser min alder som versjonsnummer, gjerne ned på dags nivå. Altså i formatet: v. 21.1.2 eller v. 21.12.3 åå.m.d = ønsket format, altså at det skal være uten null i tallet. Det er ikke noen som har et script som lett kunne modifiseres til dette? Lenke til kommentar
Asterisk Skrevet 10. juni 2006 Del Skrevet 10. juni 2006 (endret) Hvis jeg forstod deg riktig så vil du ha et script som regner ut hvor mange år, måneder og antall dager du har levd til nå. Denne vil da endre seg hvor hver dag, da du vil ha det ned på dagsnivå. Tok meg friheten til å skrive et script jeg. Skjult tekst: (Marker innholdet i feltet for å se teksten): <?php //Server dato $year = date("Y"); $month = date("n"); $day = date("j"); //En variabel som skal brukes til utregning av dager. $antallDager = ""; //Fyll ut riktig info her. Din bursdag $dittYear = "4-siffret år, dette blir endret lengre nede"; $dinMonth = "måned"; $dinDay = "dager"; //Legger verdi til $antallDager. if ($dinMonth == 1) { $antallDager = "31"; } else if ($dinMonth == 2) { $antallDager = "28"; } else if ($dinMonth == 3) { $antallDager = "31"; } else if ($dinMonth == 4) { $antallDager = "30"; } else if ($dinMonth == 5) { $antallDager = "31"; } else if ($dinMonth == 6) { $antallDager = "30"; } else if ($dinMonth == 7) { $antallDager = "31"; } else if ($dinMonth == 8) { $antallDager = "31"; } else if ($dinMonth == 9) { $antallDager = "30"; } else if ($dinMonth == 10) { $antallDager = "31"; } else if ($dinMonth == 11) { $antallDager = "30"; } else if ($dinMonth == 12) { $antallDager = "31"; } //Regner ut antall dager du har levd $differanseDay = (($antallDager-$dinDay)+$day); //Regner ut antall måneder du har levd if ($month == $dinMonth) { $differanseMonth = ((11-$dinMonth)+$month); } else if ($month <= $dinMonth) { $differanseMonth = ((12-$dinMonth)+$month); } //Regner ut antall år du har levd if ($month <= $dinMonth ) { $differanseYear = (($year-$dittYear)-1); } else { $differanseYear = $year-$dittYear; } //Sjekker for skuddår, slik at det blir lagt til en dag for hvert skuddår. while ($dittYear <= $year) { if (checkdate('2', '29', $dittYear)) { $differanseDay++; } $dittYear++; } //Skriver ut på skjerm echo 'v.'.$differanseYear.'.'.$differanseMonth.'.'.$differanseDay.''; ?> Endret 10. juni 2006 av snikende Lenke til kommentar
trondes Skrevet 10. juni 2006 Del Skrevet 10. juni 2006 <?php //Legger verdi til $antallDager. if ($dinMonth == 1) { $antallDager = "31"; } else if ($dinMonth == 2) { $antallDager = "28"; } else if ($dinMonth == 3) { $antallDager = "31"; } else if ($dinMonth == 4) { $antallDager = "30"; } else if ($dinMonth == 5) { $antallDager = "31"; } else if ($dinMonth == 6) { $antallDager = "30"; } else if ($dinMonth == 7) { $antallDager = "31"; } else if ($dinMonth == 8) { $antallDager = "31"; } else if ($dinMonth == 9) { $antallDager = "30"; } else if ($dinMonth == 10) { $antallDager = "31"; } else if ($dinMonth == 11) { $antallDager = "30"; } else if ($dinMonth == 12) { $antallDager = "31"; } 6279098[/snapback] Kan vel forandres til: $mnd = array( 0, 31,28,31,30,31,30,31,31,30,31,30,31); $antallDager = $mnd[ $dinMonth ]; Lenke til kommentar
iChristian Skrevet 10. juni 2006 Forfatter Del Skrevet 10. juni 2006 Hvis jeg forstod deg riktig så vil du ha et script som regner ut hvor mange år, måneder og antall dager du har levd til nå. Denne vil da endre seg hvor hver dag, da du vil ha det ned på dagsnivå. Tok meg friheten til å skrive et script jeg. Skjult tekst: (Marker innholdet i feltet for å se teksten): <?php //Server dato $year = date("Y"); $month = date("n"); $day = date("j"); //En variabel som skal brukes til utregning av dager. $antallDager = ""; //Fyll ut riktig info her. Din bursdag $dittYear = "4-siffret år, dette blir endret lengre nede"; $dinMonth = "måned"; $dinDay = "dager"; //Legger verdi til $antallDager. if ($dinMonth == 1) { $antallDager = "31"; } else if ($dinMonth == 2) { $antallDager = "28"; } else if ($dinMonth == 3) { $antallDager = "31"; } else if ($dinMonth == 4) { $antallDager = "30"; } else if ($dinMonth == 5) { $antallDager = "31"; } else if ($dinMonth == 6) { $antallDager = "30"; } else if ($dinMonth == 7) { $antallDager = "31"; } else if ($dinMonth == 8) { $antallDager = "31"; } else if ($dinMonth == 9) { $antallDager = "30"; } else if ($dinMonth == 10) { $antallDager = "31"; } else if ($dinMonth == 11) { $antallDager = "30"; } else if ($dinMonth == 12) { $antallDager = "31"; } //Regner ut antall dager du har levd $differanseDay = (($antallDager-$dinDay)+$day); //Regner ut antall måneder du har levd if ($month == $dinMonth) { $differanseMonth = ((11-$dinMonth)+$month); } else if ($month <= $dinMonth) { $differanseMonth = ((12-$dinMonth)+$month); } //Regner ut antall år du har levd if ($month <= $dinMonth ) { $differanseYear = (($year-$dittYear)-1); } else { $differanseYear = $year-$dittYear; } //Sjekker for skuddår, slik at det blir lagt til en dag for hvert skuddår. while ($dittYear <= $year) { if (checkdate('2', '29', $dittYear)) { $differanseDay++; } $dittYear++; } //Skriver ut på skjerm echo 'v.'.$differanseYear.'.'.$differanseMonth.'.'.$differanseDay.''; ?> 6279098[/snapback] Tusen takk for at du så på dette for meg Hmmm, nå prøvde jeg denne her, men måneden vil ikke synes. http://test.vindstille.net/versjon.php Lenke til kommentar
Asterisk Skrevet 10. juni 2006 Del Skrevet 10. juni 2006 (endret) Beklager den feilen. Jeg som skrev den litt for fort. Jeg har rettet opp i feilen no, og testet med din bursdag (fann den på profilen din ). Nedenfor ligger revidert kode: Skjult tekst: (Marker innholdet i feltet for å se teksten): <?php //Server dato $year = date("Y"); $month = date("n"); $day = date("j"); //En variabel som skal brukes til utregning av dager $antallDager = ""; //Variabel til bruk for regning av skuddår $skudd = ""; //Fyll ut riktig info her. Din bursdag $dittYear = "YYYY"; $dinMonth = "M"; $dinDay = "D"; //Legger verdi til $antallDager. if ($dinMonth == (1 || 3 || 5 || 7 || 8 || 10 || 12)) { $antallDager = "31"; } else if ($dinMonth == 2) { $antallDager = "28"; } else if ($dinMonth == (4 || 6 || 9 || 11)) { $antallDager = "31"; } //Regner ut antall dager du har levd $differanseDay = (($antallDager-$dinDay)+$day); //Regner ut antall måneder du har levd if ($month == $dinMonth) { $differanseMonth = ((11-$dinMonth)+$month); } else if ($month <= $dinMonth) { $differanseMonth = ((12-$dinMonth)+$month); } else if ($month >= $dinMonth) { $differanseMonth = $month-$dinMonth; } //Regner ut antall år du har levd if ($month <= $dinMonth ) { $differanseYear = (($year-$dittYear)-1); } else { $differanseYear = $year-$dittYear; } //Sjekker for skuddår, slik at det blir lagt til en dag for hvert skuddår. if ($dinMonth >=3 ) { $skudd = ($dittYear)+1; } else { $skudd = $dittYear; } while ($skudd <= $year) { if (checkdate('2', '29', $skudd)) { $differanseDay++; } $skudd++; } //Skriver ut på skjerm echo 'v.'.$differanseYear.'.'.$differanseMonth.'.'.$differanseDay.''; ?> Endret 10. juni 2006 av snikende Lenke til kommentar
Ernie Skrevet 10. juni 2006 Del Skrevet 10. juni 2006 (endret) No offence, men dette kan man da komprimere ned til 3 linjer da. <?php $diff = time()-mktime(0,0,0,11,26,1985); //Bytt ut 11 med måned, 26 med dag og 1985 med år. $year = (date('Y', $diff)-1970); echo 'v '.$year.'.'.date('n.j', $diff); ?> Endret 10. juni 2006 av Ernie Lenke til kommentar
Asterisk Skrevet 10. juni 2006 Del Skrevet 10. juni 2006 Var mye bedre din kode ja. Jeg er litt nybegynner på php. Men hva med skuddårsdager? Dette har ikke du tatt med i koden din. Dette er jo dager en også har levd. Lenke til kommentar
Ernie Skrevet 10. juni 2006 Del Skrevet 10. juni 2006 (endret) Var mye bedre din kode ja. Jeg er litt nybegynner på php. Men hva med skuddårsdager? Dette har ikke du tatt med i koden din. Dette er jo dager en også har levd. 6280879[/snapback] Man trenger ikke ta hensyn til det siden det bare spiller en rolle når dagen idag er 29. februar. Endret 10. juni 2006 av Ernie Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå