Overide reguliere tijden

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ambitieuze PHP developer

Organisatie Voor een van onze businesspartners met een zeer ambitieuze groeiplan zijn wij op zoek naar hoog gemotiveerde PHP ontwikkelaars. De organisatie is zo’n 50 man groot en al 7 jaar actief op deze markt. Naast dat zij op dit moment al een van de grootste zijn op het gebied van detachering, zijn zij nog steeds hard aan het groeien. Voornamelijk bestaat hun IT afdeling uit écht goede Java, Python, PHP en Front-End ontwikkelaars die meebouwen aan alleen de meest technische en uitdagende opdrachten. Zo bestaat hun portfolio uit organisaties zoals de Rabobank, MijnOverheid, T-Mobile, Sanoma, de Kamer van Koophandel

Bekijk vacature »

coördinator digitale operaties

Wat ga je doen? DIGIT is een geheel nieuw team waarin experts van politie, Koninklijke Marechaussee en de Fiscale Inlichtingen- en Opsporingsdienst samen de nieuwe hackbevoegdheid van de Wet Computercriminaliteit III uitvoeren. Het team werkt op aanvraag van opsporingsteams in binnen- en buitenland en is onderdeel van de Landelijke Eenheid van de politie in Driebergen. Als coördinator digitale operaties zet jij je kennis en vaardigheden in om de wereld een stukje veiliger te maken. Je bent verantwoordelijk voor het, onder eindverantwoordelijkheid van de teamleider DIGIT, zelfstandig organiseren en aansturen van een inzetteam dat uit meerdere specialisten bestaat. Jouw werkzaamheden op

Bekijk vacature »

Junior C# ASP.NET developer

Organisatie Voor een van onze businesspartners ben ik momenteel op zoek naar een creatieve C#, ASP.NET developer. Het ambitierijke bedrijf zit in zijn tiende jaar en is steeds harder aan het groeien. Het houdt zich bezig met gerichte web-based oplossingen voor vele bedrijven uit allerlei branches. Door hun outside-in werkwijze kunnen ze elk type klant bedienen. Waar een wil is, is een weg is het motto. Je komt terecht in een jong en ambitieus team. Er heerst een open en informele sfeer wat betekent dat je gewoon lekker jezelf kunt zijn, je je driedelig maatpak in de kast kunt laten

Bekijk vacature »

IT System Administrator (full-time, 40 hrs/week)

CRESTEC Europe B.V. is a branch office of the CRESTEC Group, a major market leader in multilingual documentation engineering with an extensive network of 26 offices around the world. For our multinational customers, we translate, localize and print the content for hardware and software user’s guides, software user interfaces, websites, online help files, and other technical documentation in a broad range of subject matters. Crestec Europe is known for the quality of its products and is a QMS (ISO 9001) and ISMS (ISO 27001) certified company with a team of about 35 members and we work according to the Plan-Do-Check-Act

Bekijk vacature »

Junior Software Developer .NET

Je kent het wel. Die ene collega die altijd ‘mazzel’ heeft gehad. Die zijn promotie in zijn schoot kreeg geworpen, maar zelf snap je niet waarom. Die collega die jouw droombaan heeft ingepikt, terwijl jij jezelf een veel betere kandidaat vindt voor de functie. Maar hoe komt dit? Heb jij dan pech gehad, of heb je niet juist gehandeld aan de hand van de mogelijkheden en kansen die zich voordeden? Vermoedelijk dat laatste. De meest succesvolle developers zijn namelijk de developers die op het juiste moment de juiste keuze hebben gemaakt. Denk jij dat je al jouw kansen volop hebt

Bekijk vacature »

Lead Developer

Are you a lead developer with an architect's skills? A digital architect who, by travelling regularly and working in close partnership with your teams in France, India and the Netherlands, will bring our airline to the next level? Then we're looking for you! Lead Developer As a Lead Developer, you're our pilot in infinite airspace. You use thorough research to lead us to all the new technological possibilities. Artificial intelligence, speech recognition, biometrics, open API: how can we serve our customers – as effectively as possible? We're ahead of the pack, but how do we maintain that position? And where

Bekijk vacature »

Junior PHP developer

Organisatie Stel je voor; je schakelt binnen een van de meest toonaangevende organisaties binnen de zorg- en verzekeringsbranche. De informatie die feilloos door de zeer complexe applicaties stroomt die jij en je team elke dag weer perfectioneren is uiterst betrouwbaar. Jij bent dan ook een absolute PHP-held die zich kan vinden in het gezegde; ‘’onmogelijk bestaat niet, het kost alleen wat meer tijd’’. Je bekleed de rol van PHP developer binnen een team van absolute eindbazen op het gebied van software development. De producten en opdrachten zijn zeer divers, maar dat jij telkens weer diep in de code duikt verandert

Bekijk vacature »

Medior PHP Developer Laravel

Organisatie In 2015 hebben twee gedreven jonge ondernemers de handen ineen gestoken om de meest ideale IT werkplek te creëren. Dat is gelukt! Bijna 3 jaar later werken er 20 mensen waarvan 10 gedreven backenders. De sfeer binnen dit bedrijf is meer dan top. Zo kan je bestellen wat je wilt als je honger hebt. Wordt er gezamenlijk geluncht. Gaan ze jaarlijks naar conferenties als Laracon en kan je werken waar en wanneer je wilt. Wil je een keer in de avond werken? Geen probleem. Wil je een maand aan de andere kant van de wereld aan het zwembad liggen

Bekijk vacature »

Drupal/ PHP developer

Organisatie Direct bij binnenkomst word je gegroet door baliemedewerkster. Jij loopt voorbij de twee StarWars figuren door naar de tweede verdieping. Hier staat de koffieautomaat al warm te draaien zodat jij samen met jou team eerst kan genieten van een lekker bakje! Samen met 23 andere ontwikkelaars is deze gezellige, ruime en lichte kantoor jullie plekje. Verdeeld over 5 scrumteams bestaande uit backend developers, een front-end developer en een tester maken jullie er dagelijks weer een gezellige dag van waar hard werken beloond wordt. Samen met jouw team bekijken jullie dagelijks de prioriteiten en schatten jullie het werk in van

Bekijk vacature »

Medior Full-Stack Developer (1 platform, duizenden

Organisatie Je komt te werken in een bedrijf wat nu 15 jaar bestaat. Wat begon als een studentproject van 4 man is inmiddels uitgegroeid tot een organisatie waar 40 mensen werken. Ze zijn gespecialiseerd in het ontwikkelen voor software voor de accountancy. Inmiddels maakt 8% van alle MKB bedrijven in Nederland gebruik van hun software die zowel op de desktop als mobiel werkt. Doordat alles binnen dit bedrijft wordt ontwikkeld en ontworpen wordt alle feedback en input gewaardeerd. Binnen het bedrijf hangt een open en gezellige sfeer. Zo wordt er samen geluncht en als je zin hebt kan je daarnaa

Bekijk vacature »

Medior C# Developer

Organization For one of PHIND’s business partners I’m looking for a Senior C # .NET developer. You will work at a company in Delft that deals with both software development and hardware, in the agricultural sector. The organization is makes hardware products to make work in the agricultural sector easier. Examples are processing machines for different crops, registration systems for products and labor, or climate control. The company is currently one of the top 3 players in this field, and always trying to stay ahead of the competition with an innovative approach to their product. You do this from a

Bekijk vacature »

Als junior Java ontwikkelaar werken aan digitalise

Vacature Omschrijving Deze innovatieve club is groeiende en houdt zich continu bezig met groei en innovatie, waarbij medewerkers in een collegiale en professionele werksfeer samenwerken. De kernwaarden zijn: toegewijd, ondernemend en vooruitstrevend en dit komt dan ook terug in alle facetten van het bedrijf. De afgelopen jaren heeft ICT een heel ander gezicht gegeven aan onze samenleving. De smartphone en tablet zijn een verlengstuk van onszelf geworden, als een zesde zintuig dat we 24/7 inzetten. De burger verwacht dat de overheid meegaat in deze ontwikkeling, zodat zij niet meer naar het gemeentehuis hoeven om producten en diensten af te nemen.

Bekijk vacature »

Software Developer Luchtvaart

Organisatie Altijd al software willen ontwikkelen binnen de luchtvaart? Dan is dit jouw kans! Voor een business partner in regio Utrecht zijn wij op zoek naar een .NET (C#) developer die wil werken aan innovatieve producten binnen de aviation divisie van het bedrijf. Hierbij is het bouwen van route kaarten, opstijg- en landingskaarten en vliegveldkaarten hetgeen jij je mee bezig zult gaan houden. Deze kaarten worden in meer dan 22 landen ingezet, oftewel: jouw bijdragen worden wereldwijd gebruikt! Om deze reden zal er dan ook een inwerkperiode voorafgaan aan jouw eerste project. Deze uitdaging ga je aan vanuit een mooi

Bekijk vacature »

Applicatieontwikkelaar

DEMCON in Twente heeft een nieuwe vacature. Ze zijn op zoek naar een Applicatieontwikkelaar! Functieomschrijving Zo ziet jouw dag als applicatieontwikkelaar eruit. DEMCON is een snel groeiende organisatie waardoor er op het gebied van ICT veel gebeurt. Via applicatie inrichting en eigen ontwikkelde tools / koppelingen creëer je met collega’s een IT omgeving waarmee de organisatie sneller en efficiënter georganiseerd wordt. Mede door het technische beheer van de (eigen) applicaties sta je midden in de organisatie. De afdeling bestaat uit Applicatieontwikkelaars, Applicatiebeheerders, Systeem- Netwerkbeheerders en Business Analysten. Samen ben je verantwoordelijk voor de totale ICT-omgeving van advies en analyse tot

Bekijk vacature »

.NET Developer: werken met Machine Learning en alg

Functieomschrijving Uiteraard wordt hier gewerkt in Scrumverband. Samen met je collega's ben jij verantwoordelijk voor de realisatie van het eindproduct. Je kunt je voorstellen dat het op deze markt uiterst belangrijk is dat er altijd heel nauwkeurig gewerkt wordt. Jullie kunnen je geen fouten veroorloven. Dit is dan ook de reden dat al je collega's minimaal een HBO diploma hebben. Iedere Ontwikkelaar is Fullstack inzetbaar. Je werkt afwisselend aan de Front- en Back-end. De producten zijn bijna altijd webapplicaties, maar soms werk je ook aan mobiele applicaties. Veel van de applicaties zijn gebaseerd om algoritmes en Machine Learning, dus ervaring

Bekijk vacature »
Jop B

Jop B

12/04/2019 00:08:14
Quote Anchor link
Ik heb mijn database als volgt ingedeeld:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
ID-DAY-STARTTIME-ENDTIME-DATE-TYPE

1-maandag-gesloten-NULL-NULL-regular
2-dinsdag-10:00-18:30-NULL-regular
3-woensdag-10:00-18:30-NULL-regular
4-donderdag-10:00-18:30-NULL-regular
5-vrijdag-10:00-18:30-NULL-regular
6-zaterdag-10:00-18:00-NULL-regular
7-zondag-gesloten-NULL-NULL-regular

8-vrijdag-11:00-14:00-2019/04/12-exception
9-zondag-12:00-18:00-2019/04/14-exception
etc

Als ik nu een query maak laad hij alles onder elkaar. Maar als ik voor deze week een uitzondering heb zoals de zondag, hoe kan deze dan overschrijven?

Output nu:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
maandag gesloten
dinsdag 10:00 - 18:30
woensdag 10:00 - 18:30
donderdag 10:00 - 18:30
vrijdag 10:00 - 18:30
zaterdag 10:00 - 18:00
zondag gesloten
vrijdag 11:00 - 14:00
zondag 12:00 - 18:00


Output zoals het zou moeten:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
maandag gesloten
dinsdag 10:00 - 18:30
woensdag 10:00 - 18:30
donderdag 10:00 - 18:30
vrijdag 11:00 - 14:00
zaterdag 10:00 - 18:00
zondag 12:00 - 18:00


Hoe kan ik dit het makkelijkste aanpakken?
 
PHP hulp

PHP hulp

19/06/2019 18:09:28
 
Rob Doemaarwat

Rob Doemaarwat

12/04/2019 10:49:06
Quote Anchor link
Wat is "deze week"? Is dat de huidige week van maandag t/m zondag; vanaf vandaag en dan 7 dagen verder; of wil je die als parameter op kunnen geven ("week 20").

Sowieso zou ik voor TYPE een int of een char(1) nemen (0/null/"r" = regular, 1/"x" = exception).

Waarom je STARTTIME en ENDTIME nog als twee aparte waarden opslaan als het toch geen echte tijden zijn (maar platte tekst). Kun je er net zo goed een enkele string van maken (zoals bij "gesloten" toch al gebeurt).

Moet het perse allemaal in een query, of mag het ook met een stukje PHP (het is hier tenslotten *PHPhulp* hè). Dat laatste is wel het makkelijkst: eerst de regular tijden ophalen (en sorteren op ID, alhoewel een aparte kolom voor de volgorde netter zou zijn), en dan voor "de week" kijken of er uitzonderingen zijn.
 
Adoptive Solution

Adoptive Solution

12/04/2019 13:18:10
Quote Anchor link
Hier een oplossing.
Aanpassen naar smaak.
veldnaam type is tinyint(1 of 0) en de tijdvelden zijn time.
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
25
26
SELECT *, if( starttime > 0, if(type = 0 ,'Afwijkende openingstijden', 'Open'), 'Gesloten' ) as 'opm'
FROM shophours
WHERE
    ( starttime > 0 AND type = 1 ) OR
    ( starttime = 0 AND type = 1 AND `day` IN( 'Maandag','Zondag' ) )
ORDER BY FIELD( `day`, 'Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrijdag', 'Zaterdag', 'Zondag' )
LIMIT 50;

SELECT *, if( starttime > 0, if(type = 0 ,'Afwijkende openingstijden', 'Open'), 'gesloten') as 'opm'
FROM shophours
WHERE
    ( starttime > 0 AND type = 1 ) OR
    ( starttime = 0 AND type = 1 AND `day` = 'Maandag' ) OR
    ( `date` = '2019-04-14' )
ORDER BY FIELD( `day`, 'Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrijdag', 'Zaterdag', 'Zondag' )
LIMIT 50;

SELECT *, if( starttime > 0, if(type = 0 ,'Afwijkende openingstijden', 'Open'), 'Gesloten' ) as 'opm'
FROM shophours
WHERE
    ( starttime > 0 AND type = 1 AND `date` = 0 AND `day` <> 'Vrijdag' ) OR
    ( starttime = 0 AND type = 1 AND `day` IN( 'Maandag', 'Zondag' ) ) OR
    ( starttime = 0 AND type = 1 AND `day` = 'Maandag' ) OR
    ( `date` = '2019-04-12' )
ORDER BY FIELD( `day`, 'Maandag', 'Dinsdag', 'Woensdag', 'Donderdag', 'Vrijdag', 'Zaterdag', 'Zondag' )
LIMIT 50;
 
Jop B

Jop B

12/04/2019 13:26:41
Quote Anchor link
Hallo Rob,

De velden start en end time Kan door de gebruiker worden ingevuld in het administratie dashboard. De vaste dagen staan al vast in de tabel dat zijn de ID's 1 t/m 7.

Daarnaast kan de gebruiker ook een datum invullen met de tijden die dan gelden. En deze moeten dan overschreven worden voor die week waarin de datum valt.
De week mag inclusief vandaag 7 dagen hebben zoals in mijn eerste post aangegeven.

Als dit met php makkelijk is of beter is dan mag dit natuurlijk in PHP zijn :)
 
Adoptive Solution

Adoptive Solution

12/04/2019 14:40:33
Quote Anchor link
Je aanvullende info is irrelevant.
Het gaat niet om wie wat invult, maar om wat er in de database zit en hoe je dat eruit haalt.
Ik heb 3 voorbeelden gegeven op basis van je gegegevens.
 
Rob Doemaarwat

Rob Doemaarwat

12/04/2019 15:17:08
Quote Anchor link
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
function get_all_records($sql){
  global $conn;

  $query = $conn->query($sql);
  $result = [];
  while($row = $result->fetch_assoc()) $result[array_shift($row)] = $row;
  return $result;
}

$sql = "select SH.DAY,SH.STARTTIME,SH.ENDTIME from SHOPHOURS SH where SH.TYPE = ";
$shop_hours = array_merge(
  get_all_records($sql . "0 order by SH.ID"),
  get_all_records($sql . "1 and YEARWEEK(`DATE`) = '201915'")
);

Levert een array $shop_hours met als key de DAY van de week (in de juiste volgorde), en in de value een array met START- en ENDTIME.
 
Jop B

Jop B

12/04/2019 22:53:21
Quote Anchor link
@Adoptive Solution @Rob,

Thanks ik ga hier mee aan de slag :)

@Rob
"als het toch geen echte tijden zijn (maar platte tekst)" hoe zou jij de tijden dan opslaan met strtotime?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$endtime
= date('H:i:s', strtotime('16:30'));
?>

Ik heb de start en de eindtijd apart zodat je nog eventueel een functie kan maken met bijvoorbeeld sluit over 15 minuten.
Gewijzigd op 12/04/2019 22:56:52 door Jop B
 
Rob Doemaarwat

Rob Doemaarwat

12/04/2019 23:02:03
Quote Anchor link
Als een TIME of gewoon als een INT (seconden na middernacht). Dan kun je d'r inderdaad echt mee rekenen.
 
Jop B

Jop B

13/04/2019 00:19:32
Quote Anchor link
Heb het nu als volgt

INDELING TABEL
id [int(11) ai]
day [varchar(255)]
starttime [time]
endtime[time]
date [date]
type [int(1)] (0 = regulier) (1 = afwijkend)

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
$conn
= new mysqli($dbhost, $dbusername, $dbpassword, $dbname);

if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

echo "Connected successfully";

function
get_all_records($sql){
  global $conn;

  $result = $conn->query($sql);
  $result = [];
  while($row = $result->fetch_assoc()) $result[array_shift($row)] = $row;
  return $result;
}


$sql = "SELECT day, starttime, endtime FROM schedule WHERE type = ";
$shop_hours = array_merge(
  get_all_records($sql . "0 ORDER BY id"),
  get_all_records($sql . "1 and YEARWEEK('DATE') = '201915'")
);

echo $shop_hours;
?>


Het enigste wat ik nu terug krijg is de connection succesfully
Gewijzigd op 13/04/2019 00:19:45 door Jop B
 
Rob Doemaarwat

Rob Doemaarwat

13/04/2019 09:00:13
Quote Anchor link
$shop_hours is een array, die zul je dus met var_dump($shop_hours) of print_r($shop_hours) moeten tonen.
 
Thomas van den Heuvel

Thomas van den Heuvel

13/04/2019 15:14:59
Quote Anchor link
De vraag is ook, hoe vaak treden er uitzonderingen op, en hoeveel moeite wil je qua (programmeer- en) invulwerk doen.

Als je dit vraagstuk van een afstandje bekijkt dan heb je in principe een soort van roostersjabloon (zij het abstract) dat meestal wel klopt. Vervolgens vertaal je dit naar een (concreet) weekrooster. Wat je dus ook zou kunnen doen is voor dit laatste een (wederom concrete) tabel introduceren. Het sjabloon zou je dan als aardappelstempel kunnen gebruiken voor het invullen van een weekrooster waarbij je een weeknummer of iets dergelijks toevoegt.

Bijkomend voordeel (als dit interessant is of kan zijn voor statistiek) is dat je een history opbouwt van wanneer het filiaal concreet open was. En over filiaal gesproken, dit kun je dus nog verder uitbreiden naar een variant waarbij verschillende filialen (ten opzichte van elkaar) afwijkende openingstijden hebben.

Op deze manier heb je een redelijk generiek stuk software wat ook vaker inzetbaar zou kunnen zijn.

Vaak is men op deze site (vrijwel alleen) met specifieke implementaties bezig. Daar is in principe niks mis mee en die zijn vaak ook prima voor wat er moet gebeuren en wellicht nog belangrijker, de aanpak wordt ook onderbouwd, maar dit zou je er niet van moeten weerhouden om gewoon eens wat op een blaadje te kliederen of wat te mijmeren over wat er nu concreet zou moeten gebeuren. Dat is nog altijd minder werk dan code kloppen en wellicht levert dat nieuwe ideeën en/of perspectieven op.
 
Jop B

Jop B

13/04/2019 19:38:51
Quote Anchor link
@rob,

Ik heb regel 6 aangepast
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
while($row = $query->fetch_assoc()) $result[array_shift($row)] = $row;


Nu krijg ik de array terug

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
Array (
    [maandag]     => Array ( [starttime] => 10:00:00 [endtime] => 18:30:00 )
    [dinsdag]     => Array ( [starttime] => 10:00:00 [endtime] => 18:00:00 )
    [woensdag]    => Array ( [starttime] => 10:00:00 [endtime] => 18:30:00 )
    [donderdag]   => Array ( [starttime] => 10:00:00 [endtime] => 18:30:00 )
    [vrijdag]     => Array ( [starttime] => 10:00:00 [endtime] => 22:00:00 )
    [zaterdag]    => Array ( [starttime] => 10:00:00 [endtime] => 18:00:00 )
    [zondag]      => Array ( [starttime] => 12:00:00 [endtime] => 18:00:00 )
)
Gewijzigd op 13/04/2019 19:40:12 door Jop B
 
Rob Doemaarwat

Rob Doemaarwat

13/04/2019 20:00:26
Quote Anchor link
** garantie tot de deur **
 
Bryan De Baar

Bryan De Baar

14/04/2019 22:58:58
Quote Anchor link
Kun je bijvoorbeeld ook sorteren op
[zondag] = vandaag
[maandag]
[dinsdag]
[woensdag]
[donderdag]
[vrijdag]
[zaterdag]


[maandag] = vandaag
[dinsdag]
[woensdag]
[donderdag]
[vrijdag]
[zaterdag]
[zondag]

[dinsdag] = vandaag
[woensdag]
[donderdag]
[vrijdag]
[zaterdag]
[zondag]
[maandag]

Dat het steeds een dag opschuift? Of kun je dan met PHP een een switch day maken en dan per dag een output geven?
 
Rob Doemaarwat

Rob Doemaarwat

15/04/2019 07:13:16
Quote Anchor link
Ipv "order by ID" doe je dan "order by mod(ID + 7 - " . date('N') . ",7)" (mod() = modulo functie). Voor de woensdag bijvoorbeeld (ID = 3, date('N') = 3) wordt het dan:
maandag: mod(1+7-3,7) = 5
dinsdag: mod(2+7-3,7) = 6
woensdag: mod(3+7-3,7) = 0
donderdag: mod(4+7-3,7) = 1
vrijdag: mod(5+7-3,7) = 2
zaterdag: mod(6+7-3,7) = 3
zondag: mod(7+7-3,7) = 4
Als je dus op deze waarde sorteer komt het netjes in de volgorde woensdag ("vandaag") t/m dinsdag.
 
Thomas van den Heuvel

Thomas van den Heuvel

15/04/2019 16:21:27
Quote Anchor link
Dit zou je in de database kunnen doen, maar zou je ook in PHP op eenzelfde wijze op kunnen oplossen. Je hoeft niet per se alles in de query te regelen.

In eerste instantie is het zaak dat de query alle benodigde gegevens ophaalt, liefst in een zo kant-en-klaar mogelijk formaat. Stel dat je later de indelingsweergave van het rooster weer wilt veranderen, als je alle logica in je query stopt zul je dan je SQL-code moeten veranderen. Ik denk dat het aanpassen van PHP-code om data wat anders weer te geven makkelijker is dan een complete query omschrijven.

Begrijp mij niet verkeerd, de ene aanpak is niet beter of slechter dan de ander, maar ik zou gaan voor een strategie waarbij alles zo simpel mogelijk blijft en ik denk dat een soort van gespreide aanpak je hiermee kan helpen.
 
Bryan De Baar

Bryan De Baar

18/04/2019 19:51:03
Quote Anchor link
Wat @Rob schreef werkt prima :)
@thomas,

Wat jij bedoeld is alle data wat in de tabel zit laden in een array en vervolgens mij PHP het gaan sorteren hoe en welke data je wilt laten zien?
Natuurlijk zijn openingstijden klein qua data maar als je nu een hoop data moet laden en dan nog met PHPmoet gaan sorteren is het dan niet sneller om dit al gelijk in de SQL query te doen?
 
Rob Doemaarwat

Rob Doemaarwat

18/04/2019 20:20:07
Quote Anchor link
Mwa ... als er geen index op zit (op de kolom/manier waarop je gaat sorteren, zoals hier ivm gebruik van een functie) gaat MySQL vaak meteen met een tijdelijke tabel aan de slag (= gedoe op disk), ook bij kleine hoeveelheden data. Sorteren in PHP gaat in memory, dus vele malen efficiënter (voor kleine hoeveelheden data!). Maar desalniettemin ga je het verschil nauwelijks merken (wederom: bij kleine hoeveelheden data).

Zelf zou ik hier gewoon voor het gemak gaan dat je alles in 1x kant-en-klaar hebt. Daarnaast kun je dit soort dingen natuurlijk prima cachen.
Gewijzigd op 18/04/2019 20:21:15 door Rob Doemaarwat
 



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.