[php/disc] Beste array voor mysql gegevens

Pagina: 1
Acties:
  • 92 views sinds 30-01-2008

  • Vulpecula
  • Registratie: April 2001
  • Laatst online: 18-08 21:00
Om gegevens uit een MySql database te halen heb je enkele functions. Maar welke is nu de beste? De volgende functions bedoel ik.

- mysql_fetch_row()
- mysql_fetch_array()
- mysql_fetch_assoc()
- mysql_fetch_object()

Verwijderd

Dat ligt aan jou welke je nodig hebt. Zelf gebruik ik bijna altijd mysql_fetch_assoc(), maar dat komt omdat mijn template parser dat wil. Als je het hebt over performance dan zou ik zelf ff een benchmark scriptje draaien.

Mysql_fetch_object() is de enige die echt anders in van deze vier. Deze geeft namelijk geen array terug maar een object.

Mysql_fetch_assoc() geeft de namen van een array terug in de velden van de array. Je krijgt dus dit soort arrays, $array["id"] en $array["naam"];

Mysql_fetch_row geeft nummers weer van de volgorde van de columns. $array[0] enz krijg je dan.

Mysql_fetch_array() is een combinatie van mysql_fetch_assoc() en mysql_fetch_row(). Je kunt namelijk zelf aangeven hoe deze zijn array vult.

Meer informatie staat in de PHP manual. Ik garandeer niet de correctheid van mijn post hierboven ;).

  • Orphix
  • Registratie: Februari 2000
  • Niet online
mysql_fetch_assoc() vind ik zelf de handigste.
Je wilt velden benaderen bij hun naam en niet hun index. Verder is deze functie iirc de snelste van Mysql_fetch_object(),Mysql_fetch_assoc() en Mysql_fetch_array().
Alleen mysql_fetch_row() zou ietsje sneller kunnen zijn maar dit scheelde erg weinig. Er zijn hier trouwens wel benchmarks van geweest op GoT.

  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-08 13:53

chem

Reist de wereld rond

zijn al meerdere topics over geweest, incl. benchmarks...

Klaar voor een nieuwe uitdaging.


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 28-08 12:00

Janoz

Moderator Devschuur®

!litemod

Volgens mij zijn fetch_assoc en fetch_array even snel. Het enige verschil is dat bij array er iig voor moet worden gezorgd dat het in dezelfde volgorde in de array wordt gestopt als het in de select query staat.

Ikzelf gebruik altijd row aangezien ik de velden gewoon opnoem in mijn queries en deze volgorde dus vast staat.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Dit topic is gesloten.