Kom ihåg mig?
Home Menu

Menu


PHP: require, dela upp funktioner?

 
Ämnesverktyg Visningsalternativ
Oläst 2012-09-13, 08:44 #1
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Citat:
Ursprungligen postat av ConnyWesth Visa inlägg
Jag har testat lite OOP med PHP och autoloader som jag tänkte dela med mig av:

--- klippt ---
Jag skulle rekommendera dig att fundera på att följa standarder. Jag vet att PHP är rätt nytt för dig så du kanske inte känner till dom.

PSR-0 har blivit en väl vedertagen standard för autoloading. Den ger dig interopabilitet mellan annan välskriven kod. https://github.com/php-fig/fig-stand...epted/PSR-0.md

Vidare är en full include_path baserad autoloading långsam samt mer error-prone och svåröveriktlig då du faktiskt måste åt en server-variabel för att se hela dess innebörd. Projektet blir alltså beroende av någon utanför projektet i sig. De flesta välskrivna projekt som har använt detta tidigare har använt en classmap generator för att lättare kunna överblicka och få bättre prestanda.

En exempel-impementation av en bra skriven PSR-0 autoloader kan du se på https://gist.github.com/221634 . Den är fullt produktionsduglig och är skriven av några av de främsta PHP-profilerna (både Zends och Symfonys huvudutvecklare finns representerade t ex).

Angående din kommentar om require_once så blir den inte alls gällande när du har en väl skriven autoloader. Det finns då längre ingen anledning att köra _once-funktionerna då andra användandet av klassen inte kommer försöka inkludera filen igen. Så en _once ger dig då ENDAST dubbla stat calls helt utan fördelar.
Clarence är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 14:06.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017