Loomy Skrevet 19. mai 2005 Del Skrevet 19. mai 2005 Det finnes en drøss forskjellige funksjoner for å hente ut MySQL-rader. Så jeg lurer på, hvilken er best å bruke? Finnes det noe dokumentasjon på hva som er raskest eller på andre måter "best"? Lenke til kommentar
Oracel Skrevet 19. mai 2005 Del Skrevet 19. mai 2005 Antar at du mener *_fetch_assoc, *_fetch_array, og *_fetch_row (jeg tar ikke med fetch_object da den høyst sannsynlig er minst tregere enn de raskeste av de før nevnte alternativer). Hvis man resonnerer, så sier det seg selv at fetch_array er tregest da den henter BÅDE et assosiativt array, og et vanlig array. Videre er det nærliggende å tro at fetch_assoc er hakket tregere enn fetch_row, da fetch_assoc bruker et assosiativt array (antakelig internt representert som et hashtable, uten at jeg vet det for sikkert). Høyst sannsynlig er fetch_row den raskeste av dem alle. Men, jeg anbefaler sterkt at du kjører en benchmark og ser selv hvor minimal forskjellen er. Jeg kan på det nærmeste garantere at den aldri vil komme til å ha noe å si for deg. Lenke til kommentar
Lokaltog Skrevet 20. mai 2005 Del Skrevet 20. mai 2005 Jeg pleide å bruke _fetch_array() før, men av praktiske årsaker bruker jeg nå nærmest kun _fetch_object(). Det er mye mer praktisk å bruke objekter, da du slipper å styre med klammer og slikt hele tiden (det går mye raskere å programmere). Lenke til kommentar
PT Skrevet 20. mai 2005 Del Skrevet 20. mai 2005 Jeg pleide å bruke _fetch_array() før, men av praktiske årsaker bruker jeg nå nærmest kun _fetch_object(). Det er mye mer praktisk å bruke objekter, da du slipper å styre med klammer og slikt hele tiden (det går mye raskere å programmere). Samme her. Ser mye mer oversiktlig ut i tillegg Lenke til kommentar
jorgis Skrevet 20. mai 2005 Del Skrevet 20. mai 2005 hastigheten til mysql_fetch_object(): Performance: Speed-wise, the function is identical to mysql_fetch_array(), and almost as quick as mysql_fetch_row() (the difference is insignificant). mysql_fetch_array(): Performance: An important thing to note is that using mysql_fetch_array() is not significantly slower than using mysql_fetch_row(), while it provides a significant added value. mysql_fetch_assoc(): Performance: An important thing to note is that using mysql_fetch_assoc() is not significantly slower than using mysql_fetch_row(), while it provides a significant added value. Står ikke noe i manualen om hastigheten til mysql_fetch_row(), men det er minimalt med forskjeller. Det er altså nesten nøyaktig like god ytelse på mysql_fetch_assoc(), mysql_fetch_array() og mysql_fetch_object(). Personlig bruker jeg alltid mysql_fetch_object(), siden den er lettere og mer oversiktelig å bruke. Lenke til kommentar
o2mlab Skrevet 23. mai 2005 Del Skrevet 23. mai 2005 Som nybegynner i PHP må jeg spørre, bare for å ha klarert forskjellen (eventuelt IKKE forskjeller): mysql_fetch_array henter naturlig nok ut alle treff på en spørring i arrays, mens myswl_fetch_row henter ut treff i rader? Antar at jeg tenker feil når jeg tenker følgende: row er entall og henter kun et treff? At row vil hente alle treffene like godt som array? Sikkert et dumt spørsmål, men vil anta det er kjekt å kunne Lenke til kommentar
Oracel Skrevet 23. mai 2005 Del Skrevet 23. mai 2005 fetch_row henter et vanlig array (0=>'o2mlab', 10=>'Som nybegynner i PHP må jeg spørre'), fetch_assoc henter kolonnenavnene også (brukernavn=>'o2mlab', tekst=>'Som nybegynner i PHP må jeg spørre'), og fetch_array kombinerer disse to (fetch_row og fetch_assoc). Bruk print_r(); for å se selv hva de forskjellige funksjonene returnerer. Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå