Gå til innhold

Hjelp til å sette variabler avhengi av tid


Anbefalte innlegg

For en stund tilbake fikk jeg god hjelp av dere til hvordan jeg kunne bruke PHP til å styre en relemodul. (se: https://www.diskusjon.no/index.php?showtopic=555564&hl= )

Siden den gang har jeg lekt meg mye med relemodulen.

 

 

Nå trenger jeg hjelp for å koble inn rele etter en hvis tid:

 

La oss si at du besøker en nettside. Etter f.eks 30 sekunder skal det dukke opp en melding på websiden (selvfølgelig avhengi av at folk oppdaterer websiden). Når meldingen er blitt vist frem skal skriptet begynne på nytt.

 

.....

 

Eller for å putte det inn i kontekst:

 

Jeg har et PHP dokument som blit sjekket ca 2 ganger i sekundet (kjører offline)

Relemodulen ett sett med brytere (1,2,4,8,16,32,64,128,256). Er bryter 1 og 2 trykket inn får jeg verdien $PortAB=3.

Når verdien $PortAB=3 skal jeg skrive inn tidspunktet til en tekstfil.

Når det har gått 30 sekunder skal jeg lukke ett rele ved hjelp av kommandoen output=1

Når dette er gjort skal skriptet starte på nytt..

Endret av lobster
Lenke til kommentar
Videoannonse
Annonse

Hmm, jeg har testet og rotet med dette i hele dag. Det nærmeste jeg kommer er:

$last_modified = filemtime("triggertime.txt");
$last_modified = (date("H:i:s", $last_modified));   
$current_time = (date("H:i:s"));
echo "".$last_modified." (last modified)<br>".$current_time." (current time) ";
$days = date('s', $current_time - $last_modified);
echo $days;

Det ser ikke ut til å fungere helt...

 

jeg ønsker bare å hente ut antall timer, minutter og sekunder.

Lenke til kommentar

PHP har vanskelig for å regne med tall i "H:i:s" format. Som zorac var inne på så må du regne ut tiden med unix timestampen(merkelig bøying, jeg vet) som filemtime gir deg.

$sec =  time() - filemtime('filename');
//Bør gi deg sekunder siden forrige oppdatering.
//Presentert i H:i:s format blir det:
$time = date('H:i:s',$sec);

Men husk at sistnevnte ikke støtter mer enn 24 timer da...

Trenger du mer enn 24 timer er det relativt enkelt å lage en egen funksjon.

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...