Gå til innhold

Optimalisering av php kode


Anbefalte innlegg

Eg har nokre spørsmål angående optimalisering av php kode.

 

La oss ta denne query koden:

$result = $db->query("SELECT pmid,fromusername,timestamp,announcement,pmtitle,pmmessage,pmread,replied FROM $pmdatabase WHERE fromuserid='$_SESSION[userid]' && pmid='$pmid' && folder='2' && savedpm='1'");

 

Bør eg feks legge til ".." mellom variablene ?

Det som eg ser vil ha mest igjen for dette må jo bli session variablen siden nå vil den gje ein lovlig "feilmelding" siden den ikkje har ' ' mellom userid og brankettene.

 

Lurer også på om det er bedre å bruke echo $variable; istedenfor echo "$variable"; når det er snakk om ein streng med tekst

 

Lurer på dette siden eg ikkje fant noko informasjon om kva som er best med tanken på best mulig optimalisert kode, slik at skriptet kjører "x" ms raskere.

 

På forhand takk.

Lenke til kommentar
Videoannonse
Annonse

man bør vel alltid etterstrebe en så perfekt php-kode som mulig. så vidt jeg vet bør du bruke " på variabler, men ikke på kolonnenavn. på fromuserid bør du absolutt bruke fromuserid=' ".$_SESSION['userid']." ' for å unngå konflikt.

 

forresten, er det en tanke å bruke * istedenfor å ramse opp alle kolonnene? Ser ut som om du har med de fleste likevel... ;)

Lenke til kommentar

Når du skal echo en variable trenger du ikke "" rund. Dersom du har en PHP editor kan det være lurt at du ikke har det, for da markeres variablene med farger.

 

Det ser ut som du bruker en class for å kjøre spørringer, dersom du er veldig opptatt av hastighet burde du legge merke til at de gjøre scriptet litt tregere.

Lenke til kommentar
jeg mente variablene i queryen ;) eller tar jeg feil?

Trenger ikke det rundt variabelnavnene i queryen dersom feltet det skal settes lik er et tall av f.eks typen INT(eks: ID=$tall). Men dersom $tall av en eller annen grunn ikke er et tall for du jo en feilmelding på queryet. Så man burde da forsikre seg om at $tall virkelig er et tall før spørringen utføres.

 

Videre så blir vel egentlig ikke koden noe særlig "optimalisert" av å fjerne gåsetegn her og der. Det er vel heller programmeringsmessing, dvs at man kanskje hadde klart seg med en "while" istedenfor en laaang "for"-løkke, eller at man egentlig bare trengte å bruke 2 variable istedenfor 20 osv...

Endret av Neo
Lenke til kommentar

Takk for svarene :)

 

Fart er ikkje ein nødvendighet i seg sjølv, det er bare spørsmål eg lurer på slik at eg kan programmere meir "rett" php kode.

 

Så for å oppsumere svara, eg bør bruke echo $variable; og ".$_SESSION['userid']." på varabler av den typer i queries, men ikkje på dei andre "vanlige" variablene ?

 

Ok, så vist det er snakk om tall i ein query så trenger du ikkje bruke ' ? Uansett om det er vanlige tall eller ein variable ?

Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...