, v.q.p.r.d. duh!,,,,,,,,,, 1, 19 - eenheid,,,,,,,, de delen van het netwerk, maandag wat in tuts + koers zal dalen tot slechts drie dollar.Niet' missen. In eerdere ervaringen, in Nettuts+, weet je van v.q.p.r.d.; overwegende dat dit artikel niet in detail van de code van het proces van integratie in de stijl van je project.Laten we dit oplossen.,,,,, noot: dit artikel is dat je de v.q.p.r.d. gelezen?En om v.q.p.r.d. te verwijzen.Laten we beginnen met het eerste criterium: psr-0.,, psr-0 - opgenomen in de normen van de « plugin », PHPCs is mijn meest gebruikte nuttige instrumenten.,, in het verleden, we hebben twee methoden in een PHP documenten:,, voor een groot stuk omvat in elk van de Top van het dossier en een Lijst van alle verklaringen. Omvat in één enkel document, met inbegrip van de interne documenten in uw project, zijn deze methoden.,, de voor - en nadelen, maar, ik denk dat we het allemaal eens zijn, ook niet de beste of de oplossing.De invoering van het dossier op basis van klasse 5 - concept van de psr-0; dus, die gericht zijn op het behoud van de naam van een met eenparigheid van stemmen, de naam of niet automatisch laden; in de technologie kan je in hetzelfde document verschillende een verklaring.Bijvoorbeeld, de volgende code volledig effectief is.PHP NETTUTS in een openbare functie, hallo {__construct () {ECHO 'Nettuts+ ";}} {in een openbare functie van Gabriel, hallo __construct () {ECHO Gabriel;}} $H = nieuwe NETTUTS, hallo (); $H = nieuwe, Gabriel, Hallo, twee, (); Hallo, In deze interne documenten, maar ze wonen in verschillende functies.Dit deel van de code van de laatste twee regels worden geconcretiseerd, hallo (), de respectieve namespace.De eerste resultaten van de Nettuts+ ", terwijl de tweede ECHO Gabriel. Namespace kan onderscheid maken tussen twee soorten met dezelfde naam, net zoals je in je Bureau MAP.Standaard psr-0 alleen gebruik te maken van de voordelen van een maakt het makkelijk te laden in je klas.Door voortdurend de naam van je dossier, je kan de oprichting van een functie van de documenten die nodig zijn voor de PSR-1 automatisch verenigbaar is.,,, je moet ook voldoen aan de psr-0.,, moeten de normen te lezen, maar samengevat:,, elke klas moet namespace en projecten (of de schepper) naam, legt de nadruk op de klasse de naam van de catalogus van documenten moet worden afgebakend, moet worden uitgebreid,. Php.,, bijvoorbeeld, een soort Referentie:,,,, sql_postgres nettuts database, als de volgende psr-0, moet deze weg:,. /////////- database NETTUTS postgres SQL PHP, hoe we dat deze functie?De meest voor de hand liggende oplossing is het gebruik van een componist, psr-0 verenigbaar met de machine automatisch laden van schepen.Als je op je project (door de componist moet je), en de keuze van het automatische machine, in plaats van het zelf geschreven, een psr-0 verenigbaar is met de procedure om de weg van je aangewezen, in kennis van de lijst van laden, kijk.Te beginnen, het creëren van een eenvoudige, composer.json, het dossier bevat de volgende hola, {"laad": {"psr-0": {"NETTUTS": "/", "gmanricks": "leverancier"}}}, hola dossier dat componist, moeten we psr-0 standaard laad alle NETTUTS - nomenclatuur, documenten en ruimte de huidige lijst (root Directory) op basis van de weg.We moeten ook belasting van alle soorten, gmanricks, attributen namespace, relatief, leveranciers, MAP (bijvoorbeeld /leveranciers /gmanricks /klasse,), nu "installatie", componisten, die belasting, of ", de componist zelf laden, in de volgende uitgave van hernieuwbare - klasse.En vergeet niet de eisen van de in de eerste jaren van het programma, <?De leverancier /PHP moet laden. Php;, componisten, is je beste optie, maar mogelijk, wil je een kleine, eenvoudige automatische machine.Php-fig verstrekking van monsters met automatische machine, kan je __autoload, functie ($classname) {% classname = ltrim ($/"\\ \\"); - de naam = "; $namespace ="; als ($(dollar lastnspos = man van klasse '\\ \\)) {% namespace = substr (- klasse, 0 dollar, lastnspos); classname = substr ($klasse, lastnspos dollar + 1 dollar); de naam = str_replace (' \\ \\ ", directory_separator, $namespace).Directory_separator;} $bestandsnaam. = str_replace ('_ ", directory_separator, $classname)."Nodig. Php; de naam;}, neemt nota van de lader proberen te laden van alle categorieën v.q.p.r.d. in de huidige lijst met criteria is belangrijk, nu we met succes de automatisch laden, laten we naar de volgende criteria: de criteria van de code van de PSR-1 -.,, de code van de criteria voor het bepalen van de universele, PSR-1 de richtsnoeren van de code, die kunnen worden onderverdeeld in twee delen, die is overeengekomen, mag je een onderscheid maken tussen twee soorten met dezelfde naam,., met een programmeertaal, de volgende naamgevingsconventies, zodat je code gemakkelijker te lezen en te handhaven.Dit zijn de regels:,, het gebruik van de nomenclatuur van de naam, PESCA, naam van de methode moet worden CamelCase,,,., constant moet in hoofdletters, met elk woord (bijvoorbeeld onderstreept tussen constant_variable,), code:, meer volgen naamgevingsconventies, zoals richtsnoeren:,, alleen met behulp van <???????PHP of <?=, in uw code.In de categorie van documenten niet gesloten PHP worden opgegeven, symbolen of gebruiken. De documenten moeten worden gebruikt, is geen bom PHP utf - 8 - formaat, zijn de meeste van deze code, is vanzelfsprekend, maar de vergadering een beetje verwarrend.Het besluit van een verklaring van de functie van het,, enz. Moeten worden gescheiden van hun eigen documenten.Dit is niet alleen de bevordering van hergebruik en de scheiding van de code van optimale werkwijzen, maar het maakt je code schoon en netjes, voor wat het waard is, elke norm is gebaseerd op eerdere v.q.p.r.d. normen.Daarom moet PSR-1 verenigbaar is, je moet ook voldoen aan de psr-0.De naleving van deze normen, je code zal de juiste attributen namespace en automatische.Niet echt een reden om ze niet te volgen, ja, projectontwikkelaars v.q.p.r.d. en andere verdragen klagen graag volgen, maar volgens deze norm, je hoeft niet bang te zijn van de gedeelde code.Zei, niemand dwingt je handen hier.Dit is maar een voorstel, een standaard psr-2, hoe moeten de specifieke organisaties in de code van je. En psr-2 - geavanceerde codering, hoe moeten de specifieke organisatie, psr-2 in je code, de volgende, we komen, is de strijd voor de mensen van PHP projectontwikkelaars; in feite, daarom koos ik voor het schrijven van Dit artikel psr-2 definieert veel regels, en velen van hen zijn als volgt:,, vier van de ruimte moet worden gebruikt in plaats van de etikettering, de lengte van de ideale lijn moet in de 80 woorden, maar 120 woorden zachte grenzen moeten in alle lijnen worden opgelegd, moet er een lege, een verklaring voor het gebruik van,,, of een beugel moet op een afzonderlijke regel een methode of ClAls "einde", "en" en "en" en "en" en "en" en "en" en "en" en "en" en "en" en "en" en "en" en "en" en "en" en "en" en "en" en "," en "en" en "en" en "en" en "en" en "en" en "en" en "en", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "".,, psr-2 net zo belangrijk als PSR-1 (en psr-0).Het gaat om de code te lezen en te handhaven.Maar zoals ze zeggen, "de duivel zit in de details, heeft veel details te herinneren, als je voor de programmering van de definitie van de verschillende gewoonten en normen, zou je dat erg moeilijk.Gelukkig, als je op een boot, een instrument om je aan psr-0 PSR-1 en psr-2.Misschien het beste instrument is in de tekst van PHPCs verheven,.,, PHPCs - PHP snuiver, de PHPCs plug is mijn meest gebruikte nuttig instrument, wanneer het betrekking heeft op de vorm van de code.Het kan niet alleen aan de criteria om ervoor te zorgen dat de code van v.q.p.r.d., maar ook de grammaticale fouten PHP te controleren.Dit is een grote besparing van tijd, en je bent niet bang dat de grammaticale fouten, als je de test voor je code in de browser, door de controle - installatie (dit heet PHPCs), of, of, om het met de volgende opdracht:% quot%.% quot%, het gebruik van CD - /library /toepassing /steun /verheven, tekst 2 /pakje /git kloon git://github.com/benmatselby/sublime-phpcs.git PHPCs, het installeren van de « plugin », maar je moet iets voor PHPCs afhankelijk zijn, je kan ophouden.Nogmaals, de makkelijkste manier om ze met de componist is geïnstalleerd.Kijk naar je keuze in de catalogus van de volgende documenten te creëren, composer.json, hola, {"naam": "NETTUTS PHPCs demonstratie", "eisen": {"squizlabs /php_codesniffer": "*", "fabpot /PHP CS fixer": "*", "phpmd /phpmd": "* * * * * * *"}}, dat zal de afhankelijkheid van de derde naar de map.Open een raam met je terminal, de locatie en de aard van de installatie, de componist is geïnstalleerd, zal het downloaden van de nodige programmatuur, nu kan je ophouden met Plug - in de nobele tekst.- "voorkeuren" > "pakket > PHP snuiver" > "instellingen - gebruikers".,,, - moet weten dat drie afhankelijk van wonen, en wij verwachten dat we moeten vasthouden aan de normen van de code, {"phpcs_additional_args": {"norm": "psr2", "n": ""), "phpcs_executable_path": "dependency_path /leveranciers /bin /PHPCs", "phpmd_executable_path": "dependency_path /leveranciers /bin /phpmd", "php_cs_fixer_executable_path": "dependency_path /leveranciers /bin /PHP CS vastgesteld. Deze kennisgeving"). De PHPCs, moeten we volgens de criteria die in elk van de psr2 afhankelijk weg.Vergeet niet te vervangen, dependency_path, en je van de weg, hervatting van de nobele en wachtwoord sniffer scan je code, Je redt je PHP dossier.,,, Edit recht zal worden een aantal nieuwe opties, zoals de afschaffing van de verkeerde teken en proberen om het probleem op te lossen.Echter, rekening houdend met de prioriteiten van dit artikel is dat je gebruik van normen, stel ik voor dat je de code en het voorkomen van handmatige vastlegging van de automatische, beugel, kenmerken.,, conclusies, v.q.p.r.d. die code kan heel gemakkelijk van het project het herhaald gebruik van projecten, zonder dat dit ten koste gaat van De consistentie van de stijl van de code.Hoewel ze in eerste instantie zal enorm zijn, kun je met de gedachte en de instrumenten om te helpen je te verschuiven, herhaal: Niemand dwingt je de manier veranderen, je PHP code.Het is gewoon een gids, die betekent dat de in het kader van de interoperabiliteit.In de Nettuts+ is gezegd, zijn wij van mening dat dit een van de beste praktijken.Nu laat je eigen hart.Als je een probleem hebt, laten we luisteren naar hun stem.,
V.q.p.r.d.
Previous:PHP
Next Page:4