Tijd verschil berekenen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

.NET developer

Functie Als .NET developer start jij in een ontwikkelteam met 15 developers en twee testers. Samen zijn jullie verantwoordelijk voor financiële applicaties met meer dan 50.000 gebruikers. Een deel van het team is verantwoordelijk voor de webapplicaties van deze organisatie. Ook zijn er twee app ontwikkelaars werkzaam in het team die zich focussen op de mobiele applicatie. Als .NET ontwikkelaar ga jij aan de slag met de webapplicaties van deze organisatie. Hierbij maak jij o.a. gebruik van C# .NET, ASP.NET, T-SQL, Angular en TypeScript. De nadruk van jouw functie ligt wel op de backend van de applicatie. Wat jouw functie

Bekijk vacature »

Functioneel applicatiebeheerder - SOP-SYS-SAM

TenneT is hard groeiend om de onze ambities waar te kunnen maken. Zo nemen wij een leidende rol in het aanjagen van de energietransitie. Het werven van nieuw talent speelt daarin een cruciale rol. Wij zijn op zoek naar een gedreven Functioneel Applicatiebeheerder voor het financiele domein op onze locatie Arnhem die hieraan wil bijdragen en misschien ben jij dat wel? Jouw bijdrage aan TenneT Je gaat samenwerken in een team van circa 15 functioneel applicatiebeheerders en gaat onderdeel uitmaken van een DevOps team. Met dit team ga je applicaties (laten) ontwikkelen en beheren. Hierbij concentreer je je vooral op

Bekijk vacature »

C# .NET Developer

Dit ga je doen Ontwikkelen van de Back-end in .NET6 / C# en WebAPI (Focus);) Ontwikkelen van de Front-End in Nodje.js en Angular (secundair); Ontwikkelen in Blazor; Opstellen van een technisch ontwerp; Testen, documenteren en implementeren van de nieuwe applicatie; Verzorgen van de nazorg, na de implementatie. Hier ga je werken Binnen deze organisatie werken duizenden mensen binnen allerlei verschillende disciplines. Tevens hebben zij veel specialiteiten in huis, waaronder ook .Net Developers. Ter uitbreiding van een nieuw team en ter ondersteuning van het project zijn ze opzoek naar een nieuwe collega voor het team. Als C#.NET Developer zal jij je

Bekijk vacature »

Front-end developer (medior/senior)

Functie Het team bestaat uit een architect, fullstack developers, app developers, de product owner en projectmanager. Eenieder draagt vanuit zijn discipline bij aan een complete oplossing voor de klant. Uiteraard zul je hierin nauw samenwerken met je collega’s. Jij wordt verantwoordelijk voor de front-end implementatie en fungeert als lead op dit gebied binnen het team. Je kunt helder formuleren, ideeën uitdragen en overbrengen aan je collega’s. Qua technische stack is het vooral van belang dat je ervaren bent met Angular, HTML5, CSS en TypeScript. Verder is ervaring in NgRx, Bootstrap, BEM en Cypress een pré, evenals affiniteit met UX/UI Design!

Bekijk vacature »

Delphi developer

Functie Als Delphi developer ga jij aan de slag in een team met twee andere ervaren Delphi programmeurs waaronder de Hoofd programmeur. Als team zijn jullie verantwoordelijk voor de doorontwikkeling van jullie bestaande applicatie. Daarnaast zijn jullie verantwoordelijk voor het onderhouden van deze applicatie en het oplossen van eventuele bugs. Eisen - HBO werk en denk niveau; - Minimaal één jaar ervaring met Delphi; - Goede beheersing van de Nederlandse taal in woord en geschrift; - Jij bent zelfstandig, maar kan ook in team verband werken. Aanbod - €3000,-- €4000,- op basis van jouw kennis en ervaring; - 8% vakantiegeld;

Bekijk vacature »

Top Low-Code Developer Gezocht!

Bedrijfsomschrijving Unieke Kansen, Uitstekende Arbeidsvoorwaarden & Inspirerend Team Wij zijn een toonaangevende, internationale organisatie die de toekomst van technologie vormgeeft door het creëren van innovatieve en baanbrekende oplossingen. Ons succes is gebaseerd op een hecht en gepassioneerd team van professionals die altijd streven naar het overtreffen van verwachtingen. Als jij deel wilt uitmaken van een dynamische, vooruitstrevende en inspirerende werkomgeving, dan is dit de perfecte kans voor jou! Functieomschrijving Als Low-Code Developer ben je een cruciaal onderdeel van ons team. Je werkt samen met collega's uit verschillende disciplines om geavanceerde applicaties te ontwikkelen en te optimaliseren met behulp van Low-code

Bekijk vacature »

Fasttrack learning & development voor Java dev

Wat je gaat doen: Wij zoeken enthousiaste en ambitieuze junior en medior ontwikkelaars die toe zijn aan de volgende stap in hun carrière. Wij helpen je op je pad naar senior ontwikkelaar door ons fasttrack learning en development programma. Na een kort en intensief programma ga jij aan de slag bij klanten van DPA. Daarnaast krijg je veel ruimte om je te ontwikkelen als persoon en als specialist. De eerste maand gaan we aan de slag om je certificeringen te behalen waaronder OCP (Oracle Certified Professional). Daarnaast nemen we een deepdive in Spring Boot. Ook laten we je kennismaken met

Bekijk vacature »

Front-end Developer

Dit ga je doen Doorontwikkelen van software; Ontwikkelen en testen van nieuwe functionaliteiten; Implementaties van nieuwe functionaliteiten en updates; Verzorgen van technische migraties naar nieuwe frameworks; Verwerken van incidenten. Hier ga je werken Onze klant, gevestigd in de regio Amsterdam, draagt bij aan het verbeteren van de veiligheid en efficiëntie van de Nederlandse infrastructuur door het ontwikkelen van afgemeten software oplossingen. Zo passen zij location intelligence toe om onderhoud en reparaties efficiënt te laten verlopen. Verder zorgen deze systemen dat incidenten zo snel mogelijk worden opgelost. Als Front-end Developer ben jij samen met je team betrokken met het (door)ontwikkelen van

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Java Front-end Developer

Dit ga je doen Ontwikkelen van nieuwe functionaliteiten in Java met tools als Springboot, MS SQL Server (T-SQL) en JavaScript; Het onderhouden van de (web-)applicaties binnen een complexe omgeving; Werken aan de migratie van een monolithisch systeem naar een architectuur gebaseerd op Kubernetes; Code reviews met collega's en actieve kennisuitdelingsessies voeren; Het uitvoeren van unit- en systeemtests Experimenteren met nieuwe tools en technieken. Hier ga je werken Binnen deze organisatie kom je te werken op de afdeling die gegevens verzamelt vanuit het hele land. Denk hierbij aan vertrouwelijke persoonsgegevens. Het team verwerkt al deze data met als doel het waarborgen

Bekijk vacature »

Back-end PHP Developer

Dit ga je doen Her- en uitbouwen van het inhouse softwareplatform dmv PHP; Onderhouden van bovengenoemd platform in PHP; Sparren met het team; Meedenken over nieuwe functionaliteiten, security etc; Jouw input leveren aan het proces door op de hoogte te blijven van nieuwe ontwikkelingen etc. Hier ga je werken Onze klant, gevestigd in de omgeving van Alkmaar, levert wereldwijd oplossingen op het gebied van IT. Dag in dag uit werken zij met veel passie aan hun product waarmee ze streven naar verbeteringen binnen zorg. Voor onze klant zijn we op zoek naar een medior PHP Developer. Je komt te werken

Bekijk vacature »

Senior PHP Developer

Als Senior PHP Developer bij Coolblue zorg je ervoor dat onze webshops elke dag een beetje beter zijn en coach je andere developers op de hard en soft skills. Wat doe je als Senior PHP Developer bij Coolblue? Als PHP Developer werk je met andere development teams samen om onze webshop zo optimaal mogelijk te laten werken en onze klanten blij te maken. Hoewel je een PHP Developer bent, sta je open om C# of Typescript in te zetten of te leren. Ook PHP Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om

Bekijk vacature »

Mendix Developer

Functie Wat ga je doen als Mendix Developer? We leven in een wereld die snel ontwikkelt en veranderd, ook nemen bedrijfsbelangen toe en blijken risico’s moeilijker in te schatten, daarom wij op zoek naar Junior, Medior en Senior Developers die bedrijven kunnen helpen met hun screeningproces en zorgen dat deze efficiënt en 100 procent AVG compliant is. Het concept achter Mendix is duidelijk. De klant heeft een vraag/probleem. Dit kunnen we door middel van slimme software oplossen. In plaats van te werken met de nieuwste technieken en tools, wordt er gekozen voor het implementeren en maken van software dat op

Bekijk vacature »

Front-end Developer Magento 2/Wordpress

Voor het aantrekkelijk houden en steeds vernieuwen van de huidige websites en webshops en het meedenken in de marketing zijn wij per direct op zoek naar een ervaren Front-end developer met gedegen kennis van Magento 2 (webshops) en Wordpress (websites). Wat bieden wij jou Mooi salaris! Meteen op contract bij de opdrachtgever! Gezellig, Kempisch bedrijf! 35 uur per week! Auto van de zaak! Wie ben jij Van een front-end developer verwachten wij: Een afgeronde Bachelor ICT opleiding met profiel ICT & Media Design. Dat je in het bezit bent van een Magento 2 professional front-end developer certificaat; Je hebt ruime

Bekijk vacature »

Mendix Ontwikkelaar - Vernieuwen van het applicati

Bedrijfsomschrijving De ontwikkelingen in de transportsector gaan razendsnel. Bij ons kun je een belangrijke rol spelen in deze sector. We streven ernaar om onze klanten te ontzorgen op het gebied van continuïteit en veiligheid met innovatieve producten en diensten. We willen dat onze klanten de veiligste vervoerders van Europa worden. Ons team werkt hard om deze ambitieuze doelstellingen te bereiken en we bieden een motiverende werkomgeving aan. We zijn op zoek naar zelfstarters met een focus op resultaat en beslissingsbevoegdheid. Functieomschrijving Als Mendix ontwikkelaar bij deze organisatie heb je een gevarieerde baan. Het applicatielandschap wordt vernieuwd en de “schade en

Bekijk vacature »

Pagina: 1 2 volgende »

Jeremy Evers

Jeremy Evers

24/11/2016 11:07:39
Quote Anchor link
Hallo,

Ik ben voor een website aan het berekenen of een restaurant open is. De restaurants zijn vaak tot na middernacht open, zoals 01:00, nu moet ik dus gaan kijken of de huidige tijd voor de tijd is van de sluitingstijd, enkel ondervind ik wat problemen mee. Tot 23:59 gaat het prima, maar daarna niet. Dit is mijn code op dit moment, het werkt tot 23:59, maar daarna geeft hij aan gesloten, terwijl hij nog tot 01:20 open is. In explode[1] en explode[2] zit de open tijd en gesloten tijd en daar maak ik time van.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
$time = time();
$open_time = strtotime($explode[1]);
$close_time = strtotime($explode[2]);
                      
$diff_open = ($time - $open_time);
$diff_gesloten = ($time - $close_time);
                      
if ($diff_open > 0 && $diff_gesloten > 0) {
    echo "<div class='companypage__restaurantopen'>Open</div>";
}else {
    echo "<div class='companypage__restaurantclosed'>Gesloten</div>";
}
Gewijzigd op 24/11/2016 11:08:27 door Jeremy Evers
 
PHP hulp

PHP hulp

24/11/2024 01:22:34
 
- SanThe -

- SanThe -

24/11/2016 11:50:11
Quote Anchor link
Wat zit er exact in $explode[1] en $explode[2]?
 
Jeremy Evers

Jeremy Evers

24/11/2016 14:07:03
Quote Anchor link
Hier zitten 2 tijden in, bijvoorbeeld: 10:00 en 16:00, deze zet ik met strtotime om naar time
 
- SanThe -

- SanThe -

24/11/2016 14:16:22
Quote Anchor link
Kan je daar niet gewoon ook de datum inzetten?
Bv: 24-11-2016 14:16
Dan is het veel simpeler uit te rekenen.
Gewijzigd op 24/11/2016 14:17:12 door - SanThe -
 
Jeremy Evers

Jeremy Evers

24/11/2016 14:18:33
Quote Anchor link
Nouja het punt is dat het openingstijden zijn, dus wekelijks. Ik krijg ze aangeleverd als 'array': 0;10:00-16:00;1;12:00-01:20;

Ik kan dan dus niet zien wanneer ik er een volgende dag datum aan moet hangen of niet.
 
Ben van Velzen

Ben van Velzen

24/11/2016 14:25:09
Quote Anchor link
Dat kun je wel deels zien, door te kijken of de tweede tijd "kleiner" is dan de eerste. Dan is dat gegarandeerd de volgende dag.

Even uit de losse pols:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$time
= time();
$open_time = strtotime($explode[1]);
$close_time = strtotime($explode[2]);

if ($close_time < $open_time) {
  $close_time += 86400;
}

                      
$diff_open = ($time - $open_time);
$diff_gesloten = ($time - $close_time);
?>
Gewijzigd op 24/11/2016 14:28:25 door Ben van Velzen
 
Jeremy Evers

Jeremy Evers

24/11/2016 14:26:28
Quote Anchor link
True, daar heb je gelijk in. Maar, hoe kan ik er dan een datum aan geven, aangezien het wekelijks is?
 
- SanThe -

- SanThe -

24/11/2016 14:27:39
Quote Anchor link
Misschien een idee om te kijken of de eindtijd kleiner is dan de starttijd.
Zo ja, tel bij de eindtijd 24 uur op.
 
Ben van Velzen

Ben van Velzen

24/11/2016 14:28:53
Quote Anchor link
Precies wat ik in mijn voorbeeld ook schets, verrassend genoeg :-)
 
Jeremy Evers

Jeremy Evers

24/11/2016 14:30:26
Quote Anchor link
Goede oplossing, dankjewel had ik zelf nog niet aan gedacht! op deze manier hoef ik er geen datum aan te koppelen, maar werkt het wel! Super, ga het gelijk toepassen.
 
- SanThe -

- SanThe -

24/11/2016 14:34:14
Quote Anchor link
@Ben: Sorry, ik had jouw post nog niet gezien. Maar dat bedoel ik inderdaad.

Toevoeging op 24/11/2016 14:37:58:

Je moet dan wel even dit
if ($diff_open > 0 && $diff_gesloten > 0) {
veranderen in dit
if ($diff_open > 0 && $diff_gesloten < 0) {
 
Jeremy Evers

Jeremy Evers

24/11/2016 15:21:49
Quote Anchor link
Toch gaat het nog niet helemaal lekker. Hij is namelijk van 16:00 tot 01:30 geopend. Nu is het bijvoorbeeld 01:10 en geeft hij aan dat het gesloten is, omdat die al wel de open tijd pakt van de volgende dag. En dat komt weer omdat ik er dit boven heb staan:

if ($dagNamen[date('D')] == $dagen[$explode[0]]) {

Maar dat heb ik erboven staan omdat hij natuurlijk moet checken welke dag het is voor de tijd..
 
- SanThe -

- SanThe -

24/11/2016 19:05:36
Quote Anchor link
Zit dat array wel logisch in elkaar?
 
Jeremy Evers

Jeremy Evers

25/11/2016 09:24:29
Quote Anchor link
Dit zijn de arrays die ik zelf heb gemaakt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
$dagNamen = array('Mon' => 'Maandag', 'Tue' => 'Dinsdag', 'Wed' => 'Woensdag', 'Thu' => 'Donderdag', 'Fri' => 'Vrijdag', 'Sat' => 'Zaterdag', 'Sun' => 'Zondag');
    
$dagen = array('Zondag', 'Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrijdag', 'Zaterdag');


En dit is de array die ik krijg vanuit de database (aangeleverd van de leverancier waardoor ik daar aan vast zit)
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
0,16:00,00:50;1,16:00,21:20;2,16:00,21:20;4,16:00,00:00;5,16:00,01:20;6,16:00,01:50;3,16:00,00:00


En bovenstaande array explode ik dan als volgt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
$explode = explode(';', $delivery_times);

foreach ($explode as $status) {
   $explode = explode(',', $status);

   if ($dagNamen[date('D')] == $dagen[$explode[0]]) {
       $time = time()."<br/>";
       $open_time = strtotime($explode[1])."<br/>";
       $close_time = strtotime($explode[2])."<br/>";
                      
       if ($close_time < $open_time) {
           $close_time += 86400;
       }
                        
       $diff_open = ($time - $open_time);
       $diff_gesloten = ($time - $close_time);
                      
       if ($diff_open > 0 && $diff_gesloten < 0) {
           echo "<div class='companypage__restaurantopen'>Open</div>";
       } else {
           echo "<div class='companypage__restaurantclosed'>Gesloten</div>";
       }
    }
}
 
- SanThe -

- SanThe -

25/11/2016 10:58:39
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
foreach ($explode as $status) {
   $explode = explode(',', $status);
?>

Dit vraagt om problemen.
Je doorloopt $explode en het eerste wat je doet is $explode compleet wijzigen.
 
Jeremy Evers

Jeremy Evers

25/11/2016 11:09:33
Quote Anchor link
Maar ik doe dat explode in de foreach omdat ik dan elke keer één dag heb, die heb ik namelijk erboven al ge-explode.
 
- SanThe -

- SanThe -

25/11/2016 11:12:30
Quote Anchor link
Maar gebruik dan altijd een andere naam.
 
Jeremy Evers

Jeremy Evers

25/11/2016 11:16:13
Quote Anchor link
Oke, ik begrijp wat je bedoelt inderdaad, nu gebruik ik de array die erboven in de foreach zit.
Wat kan daarnaast het probleem zijn van de tijd? Want daar zit ik nog wel mee, en ben ten einde raad.
 
- SanThe -

- SanThe -

25/11/2016 11:39:15
Quote Anchor link
Door deze regel kijk je na middernacht reeds bij de volgende dag.
En dat klopt niet altijd.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
if ($dagNamen[date('D')] == $dagen[$explode[0]]) {
?>
 
Jeremy Evers

Jeremy Evers

25/11/2016 11:49:28
Quote Anchor link
Klopt inderdaad, dat is het probleem. Ik haal daar de dag op en de tijd van die dag. Maar soms zijn ze geopend tot 01:00 en dan zegt hij dus om 00:00 dat het een nieuwe dag is en pakt hij de volgende tijd weer van die dag, terwijl hij tot 01:00 de tijd van de vorige dag moet pakken, maar hoe
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

25/11/2016 20:19:01
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
echo date('Y-m-d H:i', strtotime('16:00');
// geeft 1970-01-01 16:00
?>

Daarmee kan je dus nooit de tijd van nu vergelijken.
Zo wel
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
function TimeToSec($time)
{

    $parts = explode(':', $time);
    return $parts[0] * 3600 + $parts[2] * 60 + (count($parts) == 3 ? $parts[2] : 0);
}


$midnight = strtotime(date('Y-m-d 00:00:00'));
$open_time = $midnight + TimeToSec($times[1]);
$closed_time = $midnight + TimeToSec($times[2]);
if ($open_time >= $closed_time)
{

    $closed_time += 86400;
}

$now = time();
if ($open_time <= $now && $closed_time >= $now)
{

    echo 'Open';
}

else
{
    echo 'Gesloten';
}

?>

Maar beter kan je de manier waarop je de tijden in de db opslaat aanpassen door hiervoor een aparte tabel aan te maken:
- restaurant_id
- day_id (0[maandag] - 6 [zondag])
- time_open (TIME)
- time_closed (TIME)
Dan met de volgende SQL
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
SELECT
    r.restaurant_id,
    r.restaurant_name,
    CASE WHEN NOW() BETWEEN o.time_open HOUR_SECOND
        AND o.time_closed + INTERVAL IF(o.time_closed <= o.time_open, 24, 0) HOUR
    THEN 1 ELSE 0 END is_open
FROM
    restaurants r
JOIN
    (SELECT
        restaurant_id,
        CURRENT_DATE + INTERVAL time_open HOUR_SECOND time_open
        CURRENT_DATE + INTERVAL time_closed HOUR_SECOND time_closed
    FROM
        opening_times
    WHERE
        day_id = WEEKDAY(CURRENT_DATE)
    ) o USING (restaurant_id)
ORDER BY is_open DESC
Gewijzigd op 25/11/2016 20:22:47 door Ger van Steenderen
 

Pagina: 1 2 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.