/ Forside / Teknologi / Udvikling / Perl / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Perl
#NavnPoint
bjarneA 141
poul_from 50
soccer 30
Nicknack 14
Tmpj 0
dagen idag -1
Fra : Kim Emax


Dato : 03-03-03 14:47

Hey

Hvis jeg ønsker at få dagen igår, hvad skal jeg så kigge efter af function?
I PHP vil jeg bruge mktime, men jeg syns ikke lige kan kan opstøve noget i
hverken LP eller PP?

--
Take Care
Kim Emax - Freelance programmør
http://www.emax.dk - http://www.ayianapa.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



 
 
Peter Makholm (03-03-2003)
Kommentar
Fra : Peter Makholm


Dato : 03-03-03 14:52

"Kim Emax" <newsgroup@remove-emax.dk> writes:

> Hvis jeg ønsker at få dagen igår, hvad skal jeg så kigge efter af function?
> I PHP vil jeg bruge mktime, men jeg syns ikke lige kan kan opstøve noget i
> hverken LP eller PP?

($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time-(24*60*60));

Så har du dagen i $mday, $mon, $year.

--
Peter Makholm | Emacs is the only modern general-purpose
peter@makholm.net | operating system that doesn't multitask
http://hacking.dk |

Lars Kim Lund (03-03-2003)
Kommentar
Fra : Lars Kim Lund


Dato : 03-03-03 15:41

Peter Makholm <peter@makholm.net> wrote:

>> Hvis jeg ønsker at få dagen igår, hvad skal jeg så kigge efter af function?
>> I PHP vil jeg bruge mktime, men jeg syns ikke lige kan kan opstøve noget i
>> hverken LP eller PP?
>
>($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time-(24*60*60));
>
>Så har du dagen i $mday, $mon, $year.

Er det ikke pænere kode kun at hente de variable men har brug for
(givet at det kun er de tre)?

($mday,$mon,$year) = (localtime(time-(24*60*60)))[3,4,5];

Og så skal man lige huske at +1900 til $year for at få det korrekte
årstal.

--
Lars Kim Lund
http://www.net-faq.dk/

Kim Emax (03-03-2003)
Kommentar
Fra : Kim Emax


Dato : 03-03-03 16:28

Lars Kim Lund wrote:

> Og så skal man lige huske at +1900 til $year for at få det korrekte
> årstal.

Ja og lægge 1 til måned, endnu en irriternde spidsfindighed...Men det virker
som det skal, så jeg takker

--
Take Care
Kim Emax - Freelance programmør
http://www.emax.dk - http://www.ayianapa.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Kim Emax (05-03-2003)
Kommentar
Fra : Kim Emax


Dato : 05-03-03 14:06

Lars Kim Lund wrote:

> ($mday,$mon,$year) = (localtime(time-(24*60*60)))[3,4,5];

hmm...så rendte jeg ind i et andet problem. $mon er nu 3, mens det script,
jeg har lavet returnerede Mar:

my $month = strftime "%b", gmtime;

Jeg prøvede så med:
my $month = strftime "%b", gmtime -(60*60*24);
my $month = strftime "%b", localtime -(60*60*24);

Det gav ikke noget, så istedet lavede jeg et array af måneder. Men jeg er
lidt nysgerrig, kan man ikke lave noget i den stil jeg prøver ovenfor? Må
hellere sige at jeg igen har været perldoc, LP og PP igennem uden at jeg
lige kunne se nogen løsning

--
Take Care
Kim Emax - Freelance programmør
http://www.emax.dk - http://www.ayianapa.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Peter Makholm (03-03-2003)
Kommentar
Fra : Peter Makholm


Dato : 03-03-03 15:54

Lars Kim Lund <lkl@fabel.dk> writes:

> Er det ikke pænere kode kun at hente de variable men har brug for
> (givet at det kun er de tre)?

Pæn kode hvor jeg ikke bare kan cut-n-paste fra manualsiden koster
konsulentløn.

--
Peter Makholm | According to the hacker ethic, the meaning of life
peter@makholm.net | is not Friday, but it is not Sunday either
http://hacking.dk | -- Peeka Himanen

Kim Emax (03-03-2003)
Kommentar
Fra : Kim Emax


Dato : 03-03-03 16:05

Peter Makholm wrote:

> Pæn kode hvor jeg ikke bare kan cut-n-paste fra manualsiden koster
> konsulentløn.

) Hvilken man side har du været på? Jeg syns jeg har været ALT
igennem...

--
Take Care
Kim Emax - Freelance programmør
http://www.emax.dk - http://www.ayianapa.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Peter Makholm (03-03-2003)
Kommentar
Fra : Peter Makholm


Dato : 03-03-03 16:09

"Kim Emax" <newsgroup@remove-emax.dk> writes:

>> Pæn kode hvor jeg ikke bare kan cut-n-paste fra manualsiden koster
>> konsulentløn.
>
> ) Hvilken man side har du været på? Jeg syns jeg har været ALT
> igennem...

'perldoc -f localtime'. Så skal man bare tilføje at den skal trække et
passende tidsrum fra.

--
Peter Makholm | Wisdom has two parts:
peter@makholm.net | 1) having a lot to say, and
http://hacking.dk | 2) not saying it

Kim Emax (03-03-2003)
Kommentar
Fra : Kim Emax


Dato : 03-03-03 16:16

Peter Makholm wrote:

> 'perldoc -f localtime'. Så skal man bare tilføje at den skal trække et
> passende tidsrum fra.

Takker

Vil årstallet altid være angivet som 103 eller er der parametre til at få
korrekt angivelse?

--
Take Care
Kim Emax - Freelance programmør
http://www.emax.dk - http://www.ayianapa.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Lars Balker Rasmusse~ (03-03-2003)
Kommentar
Fra : Lars Balker Rasmusse~


Dato : 03-03-03 16:44

"Kim Emax" <newsgroup@remove-emax.dk> writes:
> Peter Makholm wrote:
> > 'perldoc -f localtime'.

> Vil årstallet altid være angivet som 103 eller er der parametre til at få
> korrekt angivelse?

Prøv at læse 'perldoc -f localtime'
--
Lars Balker Rasmussen                  "S.M.R.T."

Kim Emax (03-03-2003)
Kommentar
Fra : Kim Emax


Dato : 03-03-03 16:47

Lars Balker Rasmussen wrote:

> Prøv at læse 'perldoc -f localtime'

Har været der

--
Take Care
Kim Emax - Freelance programmør
http://www.emax.dk - http://www.ayianapa.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Peter Makholm (03-03-2003)
Kommentar
Fra : Peter Makholm


Dato : 03-03-03 16:28

"Kim Emax" <newsgroup@remove-emax.dk> writes:

> Vil årstallet altid være angivet som 103 eller er der parametre til at få
> korrekt angivelse?

103 er den korrekte angivelse i perl. Den parameter du leder efter
hedder '$year += 1900;'.

--
Peter Makholm | I have no caps-lock but I must scream...
peter@makholm.net | -- Greg
http://hacking.dk |

Adam Sjøgren (03-03-2003)
Kommentar
Fra : Adam Sjøgren


Dato : 03-03-03 16:57

On Mon, 3 Mar 2003 16:47:18 +0100, Kim Emax wrote:

>>> Vil årstallet altid være angivet som 103 eller er der parametre
>>> til at få korrekt angivelse?

> Lars Balker Rasmussen wrote:

>> Prøv at læse 'perldoc -f localtime'

> Har været der

Så har du bare ikke læst hvad der står, eller hva'?


,

--
"I try to make everyone's day a little more surreal" Adam Sjøgren
asjo@koldfront.dk

Kim Emax (03-03-2003)
Kommentar
Fra : Kim Emax


Dato : 03-03-03 17:31

Adam Sjøgren wrote:
> Så har du bare ikke læst hvad der står, eller hva'?

Jååååw, _efter_ jeg postede beskeden her... men det vidste du vist godt -)

--
Take Care
Kim Emax - Freelance programmør
http://www.emax.dk - http://www.ayianapa.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Peter Makholm (05-03-2003)
Kommentar
Fra : Peter Makholm


Dato : 05-03-03 14:45

"Kim Emax" <newsgroup@remove-emax.dk> writes:

> my $month = strftime "%b", gmtime -(60*60*24);
> my $month = strftime "%b", localtime -(60*60*24);

Prøv at skriv hvad du forventer og præcis hvad du får. Jeg vil gætte
på at ovenstående returnere 'Dec' eller 'Jan'. (Alt efter om perl
bruger signed eller unsigned time_t internt)

Det du gør at at kalde funktionerne gmtime og localtime med en negativ
værdi. Perl vil så give dig tidspunktet enten en dag før Epoch eller
en dag efter Epoch (Epoch er midnat ved årsskiftet til 1970).

Det du vil have det er tiden et stykke tid før nu, altså:

my $month = strftime "%b", gmtime (time-(60*60*24));

da time returnerer tiden nu.

--
Peter Makholm | According to the hacker ethic, the meaning of life
peter@makholm.net | is not Friday, but it is not Sunday either
http://hacking.dk | -- Peeka Himanen

Kim Emax (05-03-2003)
Kommentar
Fra : Kim Emax


Dato : 05-03-03 14:56

Peter Makholm wrote:

> Det du vil have det er tiden et stykke tid før nu, altså:
>
> my $month = strftime "%b", gmtime (time-(60*60*24));
>
> da time returnerer tiden nu.

Doh! Sikke en tanketorsk! Tak for svaret

--
Take Care
Kim Emax - Freelance programmør
http://www.emax.dk - http://www.ayianapa.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Adam Sjøgren (05-03-2003)
Kommentar
Fra : Adam Sjøgren


Dato : 05-03-03 14:55

On Wed, 5 Mar 2003 14:05:52 +0100, Kim Emax wrote:

> hmm...så rendte jeg ind i et andet problem. $mon er nu 3, mens det
> script, jeg har lavet returnerede Mar:

> my $month = strftime "%b", gmtime;

Burde det ikke også returnere "Mar"? Det er den 5. marts i dag.

> Jeg prøvede så med:

> my $month = strftime "%b", gmtime -(60*60*24);
> my $month = strftime "%b", localtime -(60*60*24);

Er det:

my $month=strftime "%b", gmtime(time()-(24*60*60));

du er ude efter?

(Du kan fjerne paranteserne efter time, hvis du vil - jeg synes det
bliver mere kryptisk at læse af det).


Mvh.

--
"Kom låna törnekronan min Adam Sjøgren
Lid för konsten eller brinn" asjo@koldfront.dk

Kim Emax (05-03-2003)
Kommentar
Fra : Kim Emax


Dato : 05-03-03 15:00

Adam Sjøgren wrote:
>> my $month = strftime "%b", gmtime;
> Burde det ikke også returnere "Mar"? Det er den 5. marts i dag.

Jo, men når man når til den 1., så skal den tage måneden før... Jeg løber en
log fra dagen før igennem...

> my $month=strftime "%b", gmtime(time()-(24*60*60));
>
> du er ude efter?

Jeps, som jeg også lige har sværet Peter, så var det sgu en tanketorsk uden
lige...

> (Du kan fjerne paranteserne efter time, hvis du vil - jeg synes det
> bliver mere kryptisk at læse af det).

Det kan perl nemt blive, så kommentarer er vejen frem

--
Take Care
Kim Emax - Freelance programmør
http://www.emax.dk - http://www.ayianapa.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408914
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste