50+ PHP-tricks och tips för nybörjare och utvecklare

PHP är det mest användbara språket för att skapa bloggar och webbplatser, det har många funktioner som kan användas för att få ännu fler anpassade funktioner. Vi har samlat mest användbara PHP-tricks och tips för nybörjare och även utvecklare. Dessa PHP-trick gör din kodning produktiv och mer effektiv.

50+ PHP-tricks och tips för nybörjare

Lista över PHP-tricks och tips

1. eko är snabbare än utskrift.

2. Slå in din sträng med enkla citattecken (') istället för dubbla citattecken (") är snabbare eftersom PHP söker efter variabler inuti "..." och inte i "...", använd detta när du inte använder variabler som du behöver utvärdera i din sträng.

3. Använd sprintf istället för variabler i dubbla citattecken, det är cirka 10 gånger snabbare.

4. Använd echos flera parametrar (eller staplade) istället för strängsammansättning.

5. Använd förberäkningar, ställ in maxvärdet för dina for-loopar före och inte i loopen. dvs: för ($x=0; $x < count($array); $x), anropar detta funktionen count() varje gång, använd istället $max=count($array) innan for-loopen startar.

6. Avaktivera eller nollställ dina variabler för att frigöra minne, särskilt stora arrayer.

7. Undvik magi som __get, __set, __autoload.

8. Använd require() istället för require_once() där det är möjligt.

9. Använd fullständiga sökvägar i inkluderar och kräver mindre tid på att lösa OS-vägarna.

10. require() och include() är identiska på alla sätt utom kräver stopp om filen saknas. Prestandamässigt är det väldigt liten skillnad.

11. Sedan PHP5 kan tiden för när skriptet började köras hittas i $_SERVER['REQUEST_TIME'], använd detta istället för time() eller microtime().

12. PCRE regex är snabbare än EREG, men se alltid om du kan använda snabbare inbyggda funktioner som strncasecmp, strpbrk och stripos istället.

13. När du analyserar med XML i PHP prova xml2array, som använder sig av PHP XML-funktionerna, för HTML kan du prova PHPs DOM-dokument eller DOM XML i PHP4.

14. str_replace är snabbare än preg_replace, str_replace är bäst överlag, men strtr är ibland snabbare med större strängar. Att använda array() inuti str_replace är vanligtvis snabbare än multipla str_replace.

15. "else if"-satser är snabbare än utvalda satser aka case/switch.

16. Felundertryckning med @ är mycket långsam.

17. För att minska bandbreddsanvändningen slå på mod_deflate i Apache v2 eller för Apache v1 prova mod_gzip.

18. Stäng dina databasanslutningar när du är klar med dem.

19. $row['id'] är 7 gånger snabbare än $row[id], för om du inte anger offerter måste den gissa vilket index du menade, förutsatt att du inte menade en konstant.

20. Använd taggar när PHP deklareras eftersom alla andra stilar avskrivs, inklusive korta taggar.

21. Använd strikt kod, undvik att undertrycka fel, meddelanden och varningar vilket resulterar i renare kod och mindre omkostnader. Överväg att alltid ha error_reporting(E_ALL) på.

22. PHP-skript serveras 2-10 gånger långsammare av Apache httpd än en statisk sida. Försök att använda statiska sidor istället för skript på serversidan.

23. PHP-skript (om de inte är cachade) kompileras i farten varje gång du anropar dem. Installera en PHP-cacheprodukt (som memcached eller eAccelerator eller Turck MMCache) för att vanligtvis öka prestandan med 25-100 % genom att ta bort kompileringstider. Du kan till och med ställa in eAccelerator på cPanel med EasyApache3.

24. En alternativ cacheteknik när du har sidor som inte ändras för ofta är att cachelagra HTML-utdata från dina PHP-sidor. Prova Smarty eller Cache Lite.

25. Använd isset där det är möjligt för att ersätta strlen. (dvs: if (strlen($foo) < 5) { echo "Foo är för kort"; } vs. if (!isset($foo{5})) { echo "Foo är för kort"; } ).

26. ++$i är snabbare än $i++, så använd pre-increment där det är möjligt.

27. Använd de otaliga fördefinierade funktionerna i PHP, försök inte bygga dina egna eftersom de infödda kommer att vara mycket snabbare; om du har mycket tid- och resurskrävande funktioner, överväg att skriva dem som C-tillägg eller moduler.

28. Profilera din kod. En profilerare visar dig vilka delar av din kod som förbrukar hur mycket tid. Xdebug-debuggern innehåller redan en profilerare. Profilering visar dig flaskhalsarna i översikt.

29. Dokumentera din kod.

30. Lär dig skillnaden mellan bra och dålig kod.

31. Håll dig till kodningsstandarder, det kommer att göra det lättare för dig att förstå andras kod och andra människor kommer att kunna förstå din.

32. Separera kod, innehåll och presentation: håll din PHP-kod åtskild från din HTML.

33. Bry dig inte om att använda komplexa mallsystem som Smarty, använd det som redan ingår i PHP, se ob_get_contents och extrahera, och dra helt enkelt data från din databas.

34. Lita aldrig på variabler som kommer från användarland (som från $_POST) använd mysql_real_escape_string när du använder mysql och htmlspecialchars när du matar ut som HTML.

35. Av säkerhetsskäl aldrig ha något som kan exponera information om sökvägar, tillägg och konfiguration, såsom display_errors eller phpinfo() i din webroot.

36. Stäng av register_globals (det är inaktiverat som standard av en anledning!). Inget skript på produktionsnivå ska behöva detta aktiverat eftersom det är en säkerhetsrisk. Fixa alla skript som kräver det på, och fixa alla skript som kräver det av med unregister_globals(). Gör detta nu, eftersom det är inställt på att tas bort i PHP6.

37. Undvik att använda vanlig text när du lagrar och utvärderar lösenord för att undvika exponering, använd istället en hash, till exempel en md5-hash.

38. Använd ip2long() och long2ip() för att lagra IP-adresser som heltal istället för strängar.

39. Du kan undvika att uppfinna hjulet på nytt genom att använda PEAR-projektet, vilket ger dig befintlig kod av hög standard.

40. När du använder header('Plats: '.$url); kom ihåg att följa den med en tärning(); eftersom skriptet fortsätter att köras trots att platsen har ändrats eller undvik att använda allt tillsammans där det är möjligt.

41. I OOP, om en metod kan vara en statisk metod, förklara den statisk. Hastighetsförbättringen är med en faktor 4..

42. Att öka en lokal variabel i en OOP-metod är snabbast. Nästan samma sak som att anropa en lokal variabel i en funktion och öka en global variabel är 2 gånger långsamt än en lokal variabel.

43. Att öka en objektegenskap (t.ex. $this->prop++) är 3 gånger långsammare än en lokal variabel.

44. Att öka en odefinierad lokal variabel är 9-10 gånger långsammare än en förinitialiserad.

45. Att bara deklarera en global variabel utan att använda den i en funktion saktar ner saker och ting (med ungefär samma mängd som att öka en lokal var). PHP gör förmodligen en kontroll för att se om den globala existerar.

46. ​​Metodanrop verkar vara oberoende av antalet metoder som definierats i klassen eftersom jag lade till ytterligare 10 metoder till testklassen (före och efter testmetoden) utan någon förändring i prestanda.

47. Metoder i härledda klasser går snabbare än de som definieras i basklassen.

48. Ett funktionsanrop med en parameter och en tom funktionskropp tar ungefär samma tid som att utföra 7-8 $localvar++ operationer. Ett liknande metodanrop handlar förstås om 15 $localvar++ operationer.

49. Allt måste inte vara OOP, ofta är det bara overhead, varje metod och objektanrop förbrukar mycket minne.

50. Lita aldrig på användardata, undvik dina strängar som du använder i SQL-frågor med mysql_real_escape_string, istället för mysql_escape_string eller addslashes. Observera också att om magic_quotes_gpc är aktiverat bör du först använda snedstreck.

51. Undvik problemet med injicering av PHP mail()-funktionshuvuden.

52. Avaktivera dina databasvariabler (minst lösenordet), du borde inte behöva det efter att du gjort databasanslutningen.

53. RTFM! PHP erbjuder en fantastisk manual, möjligen en av de bästa som finns, vilket gör den till ett väldigt praktiskt språk, ger fungerande exempel och talar på vanlig engelska.

Det här är några av PHP-tricks och tips som kan vara mycket användbara för dem som precis börjat lära sig PHP-språket, och även för dem som har utvecklats sedan en bra tid. RTFM är dock det mest effektiva sättet att lära sig PHP.

Aishwar Babber

Aishwar Babber är en passionerad bloggare och en digital marknadsförare. Han älskar att prata och blogga om den senaste tekniken och prylarna, vilket motiverar honom att springa GizmoBase. Han utövar för närvarande sin expertis inom digital marknadsföring, SEO och SMO som heltidsmarknadsförare i olika projekt. Han är en aktiv investerare i AffiliateBay och en regissör i ImageStation.

22 tankar om “50+ PHP-tricks och tips för nybörjare och utvecklare”

  1. Fantastiskt inlägg, dessa php-tips och tricks hjälper mycket för alla nya php-utvecklare och från det fick jag också några php-tips och tricks som jag inte kan förrän alls.

    Svara
  2. Bra tips, men jag tycker att du ska ändra punkt 37. En enkel md5-hash är inte riktigt sofistikerad nog i den värld vi lever i.

    Svara
  3. nr 15
    om/annars är snabbare än byte, du har rätt, jag gjorde några tester,
    men du bör överväga i vilket fall du ska använda switch.

    Jag har cyklat den, testat 10,1000,100000 1, XNUMX XNUMX och XNUMX miljon cykler och resultatet är:
    i 100k cykler får du 0,13s skillnad på lokal maskin (på extern server bör du få mindre skillnad).

    Så du bör överväga att använda if/else av switch. Jag föredrar att använda switch på grund av renare kod. Att använda 1 switch, 2 switch, tom 100 switch istället för if/else … det spelar ingen roll, det är meningslöst.

    Svara
  4. nr 26
    jag kör test nu,
    med $i++ och ++$i

    det är enkelt – nummer 26 är meningslöst tills du vill använda mer än 10mil. cykler.
    Och skillnad?

    10 mil cykler med $i++ 2.67448 s
    10 mil cykler med ++$i 2.605528 s

    Svara
  5. 24. (...) Prova Smarty eller Cache Lite.
    33. Bry dig inte om att använda komplexa mallsystem som Smarty

    OK.

    (Jag skulle personligen bara ta bort #33; smarty (eller andra mallsystem) har många fördelar jämfört med ob_-funktionerna...)

    Svara
  6. Echo är snabbare än att skriva ut med en opcode så det spelar egentligen ingen roll. Och print() är en funktion, echo är det inte. Prova detta:

    $variable och skriv ut 'variabeln är inställd!';

    Och om inkrementering: $i += 1; är den snabbaste.

    Bra artikel, tack!

    Svara
  7. Det är en bra sammanfattning av några PHP-kodtrick. Det är viktigt att en utvecklare också överväger prestandan för koden han/hon utvecklar. Tack för att du delar med dig.

    Svara
  8. Hej, dess fantastiska innehåll och php är ett väldigt coolt språk. Jag kommer verkligen att följa detta trick, på grund av dess funktioner är det väldigt lätt att förstå och lära sig.

    Svara
  9. Bra artikel tack för att du delar
    Bra tips, men jag tycker att du ska ändra punkt 37. En enkel md5-hash är inte riktigt sofistikerad nog i den värld vi lever i.

    Svara

Lämna en kommentar