while versus alles ineens

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Software developer

Functie Momenteel zijn ze op zoek naar een Software developer die, veelal fullstack, mee gaat werken aan de ontwikkeling van de producten en zo helpt aan de uitvoering van hun ontwikkelprojecten. Je komt te werken binnen hun development team bestaande uit 6 ontwikkelaars. Ze staan zowel open voor meer junior als medior/senior developers. Je kunt snel veel verantwoordelijkheid krijgen en doorgroeien binnen het bedrijf. Bovendien ben je betrokken bij het bepalen van de product roadmap en de inbreng van (nieuwe) technologieën. De applicaties waaraan je werk worden gebruikt op onderwijsinstellingen door heel Nederland. De tech-stack bestaat voornamelijk uit Laravel (PHP),

Bekijk vacature »

Senior Developer Betty Blocks Blauwe Haven Rotterd

Functieomschrijving Voor de Politie zijn wij opzoek naar een Senior Developer Betty Blocks Blauwe Haven Rotterdam. De politieorganisatie heeft jaarlijks te maken met een aanzienlijk aantal politiemedewerkers die vanwege mentale overbelasting niet of beperkt inzetbaar zijn. De Blauwe Haven Rotterdam ondersteunt deze politiemedewerkers in hun herstel en re-integratieproces. De huidige digitale systemen van de Politie bieden onvoldoende ondersteuning in het herstel- en re-integratieproces van politiemedewerkers. Zowel voor de politiemedewerkers als voor de organisatie. Politiemedewerkers worden buitengesloten, waardoor zij eigen regie verliezen. Begeleiders kunnen de voortgang van de medewerkers niet goed monitoren. Management beschikt niet over de mogelijkheid trends te signaleren

Bekijk vacature »

Low Code Developer - Consultant

Functie omschrijving Wil jij fungeren als een spin in het web en samenwerken met klanten? Voor een leuke en interessante opdrachtgever in omgeving Leiden zijn wij op zoek naar een Low Code developer die zich bezig gaat houden met het optimaliseren van bedrijfsprocessen bij klanten en het leiden van projecten. Ben jij toe aan een nieuwe uitdaging en heb jij verstand van datamodellering en NO CODE Platformen? Lees dan snel verder! Bij deze rol horen de volgende werkzaamheden: Je gaat geen code kloppen maar bedenken hoe applicaties eruit moet komen te zien. Je gaat werken met een non code platform,

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# developer

Functie omschrijving We are looking for a dutch native speaker Ik ben op zoek naar een back-end developer, die met name kennis & ervaring heeft van de programmeertaal C#. Jij gaat aan de slag bij een topspeler in de logistieke sector, die zich behalve met logistiek, ook bezig houdt met softwareontwikkeling. Welke taken komen hierbij kijken? Je gaat desktop- en webapplicaties onderhouden en optimaliseren, waarin je werkt met o.a. C#, ASP.NET, SQL Server en T-SQL. Je hebt regelmatig klantcontact om de wensen in kaart te brengen en te evalueren over de huidige draaiende applicaties. Je implementeert nieuwe functionaliteiten toe aan

Bekijk vacature »

Creatieve Front-end developer gezocht!

Functie Het front-end team bestaat momenteel uit 4 collega’s en is hard aan het groeien! Samen leveren jullie een essentiële bijdrage aan de applicaties die ze voor hun klanten realiseren. Je werkt in het front-end team samen met de back-end teams en product owners om te zorgen dat de applicaties een fijne gebruikerservaring opleveren. Jouw expertise zorgt ervoor dat de juiste keuzes gemaakt worden qua techniek en ontwerp, van back-end tot aan gebruiker. In samenspraak met je team bepalen jullie de beste keuze voor techniek. Ook is er altijd ruimte om nieuwe technieken te ontdekken. Eisen • Je hebt gedegen

Bekijk vacature »

Starter/junior Magento developer gezocht!

Functie Je komt te werken in een zelfsturend team waarin vertrouwen voorop staat en inbreng en ideeën worden gewaardeerd. Ook staat innovatie centraal. Ze bieden jou de mogelijkheid om jezelf door te ontwikkelen. Denk hierbij aan cursussen en een persoonlijk ontwikkelplan. Je komt terecht in het team van momenteel 4 (ervaren) collega’s en zal meewerken aan de doorontwikkeling en nieuwbouw van de Magento platformen van meerdere opdrachtgevers volgens Agile/Scrum. Denk hierbij aan nieuwe functionaliteiten, UX en koppelingen met verschillende back-end systemen. Als starter/junior developer zul je direct begeleid worden door een senior uit het team. Het is van belang dat

Bekijk vacature »

Mendix Consultant / Developer

Dit ga je doen Het in kaart brengen en analyseren van de functionele wensen van de klant rondom Mendix applicaties; Het fungeren als sparringpartner voor de (interne) klanten; Het opstellen van requirements en het vertalen hiervan naar technische mogelijkheden; Het opstellen van user stories; Het bouwen van de Mendix applicaties in samenwerking met jouw team of zelfstandig; Het testen van op te leveren software en het zorg dragen voor de implementatie; Trainen van gebruikers in het gebruik van de applicatie; Werken in een Agile omgeving. Hier ga je werken De organisatie begeeft zich in de retail branche en focust zich

Bekijk vacature »

Robot Programmeur

In het kort Drie redenen waarom deze vacature uniek is! Modern, innovatief en Informeel bedrijf waar veel mogelijk is Werken met diverse robot merken Meehelpen met inbedrijfstellingen bij de klant De organisatie Hier ga je aan de slag Dit groeiende bedrijf van totaaloplossingen in de automatisering van productieprocessen, is hoofdzakelijk actief in de Benelux. Vanuit het kantoor in regio Amersfoort worden veel oplossingen geboden in de vorm van robotica. Geen project is hetzelfde wat garant staat voor bijzonder veel afwisseling. De bedrijfsgrootte is ongeveer 80 man. Van gerobotiseerde machinebeladingen tot aan assemblage automatiseringen wordt vanuit krachtige engineering maatwerk equipment geleverd.

Bekijk vacature »

Software Developer Mendix / Maatschappelijk Betrok

Dit ga je doen Het bouwen van de Mendix applicaties in samenwerking met jouw team of zelfstandig; Werken met Scrum methodiek; Ontwikkelen van vooruitstrevende oplossingen; Meedenken over nieuwe applicaties en ontwikkelingen; On the job eigen maken van de Mendix omgeving. Hier ga je werken Deze dynamische en snelgroeiende organisatie begeeft zich in de recyclingbranche. Zij nemen op duurzame en efficiënte manier de recycling op zich. Vanwege hun snelle groei zijn zij op zoek naar een young professional die zich graag wilt ontwikkelen als Mendix Developer. Je komt te werken binnen een IT team van +/- 15 medewerkers. Het huidige ‘vaste’

Bekijk vacature »

C# .NET Developer

Functie omschrijving Ben jij op zoek naar een nieuwe uitdaging binnen development waar je komt te werken binnen een flexibel, jong en ondernemend bedrijf. Lees dan snel verder! Voor deze functie zoeken wij een C# .NET Developer die enthousiast wordt van het aansluiten en begeleiden van (complexe) nieuwe klanten. Daarnaast begeleid je complexe projecten, wij zoeken iemand die altijd kansen ziet en waarbij het glas altijd half vol is. Voor deze functie zoeken wij een Developer met ervaring op het gebied van .NET die deze organisatie gaat versterken. Binnen de organisatie ga jij je vooral bezighouden met het verbeteren van

Bekijk vacature »

Fullstack developer

Functieomschrijving Heb jij kort geleden jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een andere uitdaging? Voor een erkende werkgever in de omgeving van Breda zijn wij op zoek naar een Fullstack developer. Kennis of ervaring met C# & SQL is een must! Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten; Je bent verantwoordelijk voor de beheer en ontwikkeling van de software; Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je test de software en ontwikkelt deze door; Je brengt de aanpassingssuggesties van klanten in

Bekijk vacature »

Back end Node.js developer

Functie Het ontwikkelteam bestaat momenteel uit 5 (back-end) Developers, 2 systeembeheerders, 1 DevOps engineer, 1 Tech Lead en 2 Scrum Masters. Samen wordt er doorontwikkeld aan twee SaaS-platformen die in een hoog tempo doorontwikkeld moeten worden. Omdat innovatie een belangrijk speerpunt binnen de organisatie is, wordt er ook continu naar snellere en slimmere oplossingen te bedenken en realiseren. Als Back-end Developer hou jij je dagelijks bezig met vraagstukken zoals: API-development, high volume datastromen, het ontwikkelen van Bots aan de hand van A.I. Daarnaast denk en werk jij mee aan de onlineapplicaties voor klanten. Er wordt zelfstandig en in teamverband gewerkt

Bekijk vacature »

Python (Django) developer - Remote in The Netherla

Functie Together with your team, consisting of a senior, 2 mediors and one junior developer, you will work on their software in an Agile-based approach. You have an eye for quality, risk, and customer interest. Communication with your colleagues and, where necessary, with customers, plays an important role in achieving a successful result. As a person, you are smart, get things done, and are result-oriented. There is a lot of independence within the development team, apart from the stand-up (10:00 am) and occasional pair-programming sessions. Techniques they use include Python, Django, MySQL, Mercurial, Ubuntu Linux, Nginx. In terms of front-end

Bekijk vacature »

Senior front-end developer (React)

Functie Momenteel zijn ze op zoek naar een ervaren front-end developer. Als senior werk je nauw samen met 5 collega developers. Een klein scrum team dus, met korte lijnen waardoor jouw ideeën snel tot uitvoering gebracht kunnen worden. De huidige applicaties worden veelal ontwikkeld met o.a. React, Redux, TypeScript. Ze zijn echt op zoek naar een kartrekker in het team. Naast het meedenken over, opzetten en uitvoeren van bijvoorbeeld de architectuur of toepassing van nieuwe technieken krijg je ook veel tijd om de meer junior (front-end) developers te begeleiden. Hierin nemen ze graag de tijd om mensen de ruimte te

Bekijk vacature »

Pagina: 1 2 volgende »

Ozzie PHP

Ozzie PHP

02/06/2013 15:01:02
Quote Anchor link
Hoi mensen,

Een kort vraagje. Als ik 20 producten uit de database wil halen dan kan ik in PDO via fetchAll() al deze producten in 1 keer ophalen. Nu zie ik ook regelamtig de "while" constructie voorbijkomen, en ik vraag me af wat daar het voordeel van is:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
$products
= '';
while ($row = $result->fetch()) {
  $products .= '<div class="product">' . $row->description . '</div>';
}

?>


Dit levert toch gewoon hetzelfde resultaat op?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$result
= $result->fetchAll();
$products = '';
foreach ($result as $product) {
  $products .= '<div class="product">' . $product->description . '</div>';
}

?>


Waarom ik dit vraag?

Ik heb nu een eigen databse class gemaakt die PDO extend. De method om gegevens op te halen heb ik fetch() genoemd. Echter, fetch() is ook een method van PDO die ik nu dus met mijn eigen method overschrijf. Dit levert op zich geen problemen op, tenzij ik ooit die "while" constructie nodig zou hebben. Daarom ben ik dus benieuwd wat daarvan de meerwaarde is, als er überhaupt een meerwaarde is.

Graag jullie reactie.
Gewijzigd op 02/06/2013 15:02:38 door Ozzie PHP
 
PHP hulp

PHP hulp

17/11/2024 21:21:54
 
Eddy E

Eddy E

02/06/2013 20:57:30
Quote Anchor link
Is fetchAll() niet gewoon een interne functie die door middel van de while() alles in een array gooit en dan teruggeeft?
 
Wouter J

Wouter J

02/06/2013 21:18:05
Quote Anchor link
Eddy, ja, maar dan met nog heel wat meer checks en dingen erbij.

PDOStatement is ook gewoon een iterator, dus dat kun je ook gebruiken.
 
Ozzie PHP

Ozzie PHP

02/06/2013 21:19:55
Quote Anchor link
Oké, maar wat is nu het verschil tussen mijn beide codevoorbeelden? Maakt het iets uit?
 
Ward van der Put
Moderator

Ward van der Put

03/06/2013 06:57:48
Quote Anchor link
Ozzie PHP op 02/06/2013 21:19:55:
Oké, maar wat is nu het verschil tussen mijn beide codevoorbeelden? Maakt het iets uit?
Het is een klassieke trade-off in performance: fetchAll() is sneller maar verbruikt daarvoor in ruil meer geheugen dan fetch().

Verder hangt het af van wat je in de loop wilt kunnen doen. Als de loop bijvoorbeeld voortijdig verlaten kan worden met break, als de loop een redirect uitvoert of als de loop het script beëindigt met een error, dan is alles ophalen met fetchAll() niet nodig.
 
Ozzie PHP

Ozzie PHP

03/06/2013 11:17:25
Quote Anchor link
Ah, daar kan ik wat mee.

"Het is een klassieke trade-off in performance: fetchAll() is sneller maar verbruikt daarvoor in ruil meer geheugen dan fetch()."

Nu wordt hierboven gezegd dat fetchAll in feite ook gewoon een while uitvoert. Waar zit dan precies dat verschil in snelheid versus geheugen?

"Verder hangt het af van wat je in de loop wilt kunnen doen. Als de loop bijvoorbeeld voortijdig verlaten kan worden met break, als de loop een redirect uitvoert of als de loop het script beëindigt met een error, dan is alles ophalen met fetchAll() niet nodig."

Ik snap wat je bedoelt. Komt zoiets in de praktijk vaak voor dat jij weet? Dat je de loop vroegtijdig moet verlaten op basis van input vanuit de database? (misschien een voorbeeldje?)
 
Ward van der Put
Moderator

Ward van der Put

03/06/2013 12:07:29
Quote Anchor link
Even vereenvoudigd gesteld. Een SELECT geeft je een resultaatset of meer precies een recordset op de databaseserver (nog niet in PHP). Met een fetch() laad je daaruit vervolgens één record/rij in PHP, waarna de cursor/pointer door de databaseserver naar de volgende rij in de resultaatset c.q. recordset wordt verplaatst. Een fetchAll() doet dat in één keer. Het verschil is dus dat je in PHP bij fetch() binnen je loop niet meer geheugen nodig hebt dan nodig is voor één rij, terwijl een fetchAll() alle rijen ineens overhevelt. Daar heb je de trade-off: sneller maar ten koste van geheugen.

Als je een gerichte (goede) query schrijft, zou het inderdaad niet veel moeten uitmaken, omdat je toch uitsluitend ophaalt wat je nodig hebt en verder niets. Maar in de praktijk wil je misschien in PHP nog wat controles uitvoeren die je niet kon formaliseren in de query. Dat is dan de voornaamste afweging.
Gewijzigd op 03/06/2013 12:10:34 door Ward van der Put
 
Ozzie PHP

Ozzie PHP

03/06/2013 12:14:11
Quote Anchor link
Oké. Ik snap je uitleg volledig. Het lijkt me alleen tegenstrijdig met wat Eddy hierboven zegt:

"Is fetchAll() niet gewoon een interne functie die door middel van de while() alles in een array gooit en dan teruggeeft?"

Anyhow... welke methode gebruik jij zelf het meest? Ben jij zelf wel eens in een situatie gekomen waarin het per rij fetchen handiger was dan alles in 1x fetchen?

Bedankt trouwens voor de uitleg van hoe een SELECT query werkt icm een recordset. Zo had ik het zelf ook bedacht, maar ben blij dat jij dat nu even bevestigd hebt :)
 
Ward van der Put
Moderator

Ward van der Put

03/06/2013 12:20:49
Quote Anchor link
Nee, Eddy zegt hetzelfde: fetchAll() zal een recordset op een databaseserver uiteindelijk hetzelfde benaderen, maar doet dat achter de schermen.

Vraag is meer of je die complete recordset in het PHP-geheugen wilt laden. Soms wel, soms niet. Ik denk namelijk niet dat er één methode is die altijd het beste werkt; in een databaseklasse op basis van PDO zou ik daarom beide gebruiken. Of anders gezegd: ik zou me niet bij voorbaat tot één van beide beperken als ik beide tot mijn beschikking heb.
 
Ozzie PHP

Ozzie PHP

03/06/2013 12:26:36
Quote Anchor link
Oké, ik heb inmiddels de method naam aangepast zodat ik beide kan gebruiken. Dus dat probleem is opgelost.

"Vraag is meer of je die complete recordset in het PHP-geheugen wilt laden."

Misschien een rare vraag, maar waarom zou je het niet willen? Je voert bewust een bepaalde SELECT query uit. Die gegevens wil je dan toch ook daadwerkelijk binnenhalen? Anders gezegd. Stel ik selecteer 10 producten, dan wil ik daar dus blijkbaar iets mee doen. Dan zal ik ze toch altijd in het geheugen moeten laden?
 
Ward van der Put
Moderator

Ward van der Put

03/06/2013 12:41:09
Quote Anchor link
Ozzie PHP op 03/06/2013 12:26:36:
Misschien een rare vraag, maar waarom zou je het niet willen? Je voert bewust een bepaalde SELECT query uit. Die gegevens wil je dan toch ook daadwerkelijk binnenhalen? Anders gezegd. Stel ik selecteer 10 producten, dan wil ik daar dus blijkbaar iets mee doen. Dan zal ik ze toch altijd in het geheugen moeten laden?
Nee, dat hoeft niet. Stel, je wilt die 10 producten tonen in een HTML-tabel. Je hoeft dan in PHP alleen de <tr>...</tr> per product op te slaan, niet de achterliggende 10 records. En dan kun je de 10 tabelrijen dus ook één voor één opstellen met fetch().
 
Ozzie PHP

Ozzie PHP

03/06/2013 12:45:11
Quote Anchor link
Dat snap ik even niet... die tabel (met inhoud) moet je toch ook opslaan? Of bedoel je dat je die gelijk gaat echo'en??

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
while ($product= $stmt->fetch()) {
  echo '<tr><td>' . $product->description . '</td></tr>';
}

?>
 
Ward van der Put
Moderator

Ward van der Put

03/06/2013 13:36:00
Quote Anchor link
Inderdaad: zodra je 'iets' hebt gedaan met een rij uit de recordset, heb je die vaak niet meer nodig. Dan kan een echo zijn, maar bijvoorbeeld ook het opslaan van een tabelrij in een array of het wijzigen van een eigenschap van een object. De huidige rij uit de database kan dan verder vergeten worden en in de loop worden vervangen door een volgende rij.
 
Ozzie PHP

Ozzie PHP

03/06/2013 13:58:18
Quote Anchor link
Hmmm, oke... maar als ik dan even kijk hoe ik programmeer. Ik maak meestal gebruik van het MVC principe. Ik zou in bovengenoemd voorbeeld in de controller via het model de results ophalen via fetchAll, en het result dan doorgeven aan de view. Pas in de view zou ik die tabel dan opbouwen.

Als je trouwens dit zou doen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
$products
= $stmt->fetchAll();
foreach ($products as $product) {
  echo '<tr><td>' . $product->description . '</td></tr>';
}

?>

en je gooit daar vervolgens een unset achteraan...

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
unset($products);
?>

Levert dat dan hetzelfde resultaat op?
 
Ward van der Put
Moderator

Ward van der Put

03/06/2013 14:36:40
Quote Anchor link
Als je in de view een array verwacht of een soortgelijke datastructuur of datacontainer, dan is het inderdaad logischer om die in één ruk te vullen met fetchAll().
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

03/06/2013 17:53:27
Quote Anchor link
Ik heb altijd gedacht dat een recordset in één keer van de db server af gehaald wordt, in PHP manual spreekt men ook van een result set als resultaat van een query.

Ik vindt het programeer technisch gezien eigenlijk gewoon onlogisch om rij voor rij op te halen, dit genereert alleen maar meer netwerk traffic.
 
Ozzie PHP

Ozzie PHP

03/06/2013 18:31:53
Quote Anchor link
Ward van der Put op 03/06/2013 14:36:40:
Als je in de view een array verwacht of een soortgelijke datastructuur of datacontainer, dan is het inderdaad logischer om die in één ruk te vullen met fetchAll().

Oké.

Ger van Steenderen op 03/06/2013 17:53:27:
Ik heb altijd gedacht dat een recordset in één keer van de db server af gehaald wordt, in PHP manual spreekt men ook van een result set als resultaat van een query.

Ik vindt het programeer technisch gezien eigenlijk gewoon onlogisch om rij voor rij op te halen, dit genereert alleen maar meer netwerk traffic.

Ik vind het ook niet handig om rij voor rij op te halen. Maar volgens mij haal je dus op basis van je query een resultset op. Deze resultset staat dan op de databaseserver. Met fetch haal je er dan telkens 1 rij vanaf, en met fetchAll haal je alles in 1x op. Op het moment dat je iedere rij meteen op het beeld zou echo'en, zou je de rijen dus niet op te hoeven slaan in het geheugen en daarmee bespaar je dus geheugen. Echter, in de moderne programmeerstijlen denk ik niet dat het logisch is om het resultaat van je query direct naar het beeldscherm te echo'en. FetchAll lijkt me dan in de meeste gevallen ook de logische keuze.
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

03/06/2013 22:35:29
Quote Anchor link
Ik ben altijd in de veronderstelling geweest dat met een query gewoon in één keer zo'n recordset van de db server af getrokken wordt.
Maar als jij en Ward gelijk hebben (waarvan ik -nog- niet helemaal overtuigd ben) is die fetch gewoon zinloos geweld.
Je zou dan dus geheugen besparen in PHP, maar op de db server kost het je geheugen.
Daarnaast zou je dus als je bv 40 rijen ophaalt, 39 extra client-server op-en-neertjes krijgen.
Keuze lijkt mij niet zo moeilijk
 
Ozzie PHP

Ozzie PHP

03/06/2013 22:57:30
Quote Anchor link
"Ik ben altijd in de veronderstelling geweest dat met een query gewoon in één keer zo'n recordset van de db server af getrokken wordt."

Als je fetchAll gebruikt is dit wel het geval.

Volgens mij is het zo dat je dus een SQL statement hebt SELECT blabla FROM...

Vervolgens execute() of query() je dit statement $stmt->execute(). Door dit te doen wordt er een resultset klaargezet op de databaseserver. Alle rijen zijn nu dus al opgehaald uit de database.

Door fetchAll te gebruiken haal je in 1x alle rijen binnen in PHP. Echter door fetch te gebruiken haal je telkens 1 rij binnen. VOlgens mij is dit hoe het werkt, maar pin me er niet voor 100% op vast. Ward, klopt mijn verhaal?
 
Ward van der Put
Moderator

Ward van der Put

04/06/2013 06:55:43
Quote Anchor link
Ozzie PHP op 03/06/2013 22:57:30:
Door fetchAll te gebruiken haal je in 1x alle rijen binnen in PHP. Echter door fetch te gebruiken haal je telkens 1 rij binnen. VOlgens mij is dit hoe het werkt, maar pin me er niet voor 100% op vast. Ward, klopt mijn verhaal?
Ja, dat klopt. Verbreek maar eens de databaseverbinding midden in een loop die rijen ophaalt. Of wat je ook kunt doen: verplaats de cursor terug naar een eerder gelezen rij.

Bij "in één keer" kan ik me technisch niet veel voorstellen. Bij PDO::fetchAll() krijg je namelijk een PHP-array, een nogal typische datastructuur. En PDO moet die PHP-array genereren via de recordsets van uiteenlopende databaseplatforms. Bijvoorbeeld een MySQL-recordset wordt niet "in één keer" een PHP-array. Je kunt allicht in de PDO-code duiken, maar ik vermoed dat het toch achter de schermen met iteraties wordt gedaan.
Gewijzigd op 04/06/2013 06:56:11 door Ward van der Put
 
Ozzie PHP

Ozzie PHP

04/06/2013 14:00:40
Quote Anchor link
Ward van der Put op 04/06/2013 06:55:43:
Je kunt allicht in de PDO-code duiken, maar ik vermoed dat het toch achter de schermen met iteraties wordt gedaan.

Je bedoelt dat er sowieso een soort van while loop wordt uitgevoerd? Dit zou dan inhouden dat het niet uitmaakt als je zelf de rijen met een "while" constructie ophaalt, of dat je fetchAll gebruikt omdat die laatste achter de schermen waarschijnlijk dan ook een soort "while" constructie gebruikt. Maar inderdaad, het blijft gissen...
 

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.