Heim >Backend-Entwicklung >PHP-Problem >Welche Spezifikationen sind für die PHP-Entwicklung zu beachten?

Welche Spezifikationen sind für die PHP-Entwicklung zu beachten?

王林
王林Original
2019-09-26 17:40:113251Durchsuche

Welche Spezifikationen sind für die PHP-Entwicklung zu beachten?

1. PHP-bezogene Namenskonventionen

1. Methodenbenennung

Methode , bezieht sich auf die in der Klasse definierten Funktionen, und der erste Buchstabe ist ein Kleinbuchstabe oder verwendet einen Unterstrich „_“, zum Beispiel: getUserName(), _parseType() Normalerweise sind Methoden, die mit einem Unterstrich beginnen, privat Methoden;

2. Funktionsbenennung

Funktion bezieht sich auf eine Funktion, die nicht in einer Klasse definiert ist, beispielsweise eine Funktion in einer öffentlichen Datei. Verwenden Sie Kleinbuchstaben und Unterstriche, um Funktionen wie get_client_ip();

3 zu benennen. Attribute werden in Kamelschrift benannt und der erste Buchstabe ist ein Kleinbuchstabe oder ein Unterstrich „_“, z. B. „tableName“, „_instance“ sind normalerweise private Attribute

4 >

Konstanten werden mit Großbuchstaben und Unterstrichen benannt, wie z. B. HAS_ONE und MANY_TO_MANY;

Konfigurationsparameterbefehl

Konfigurationsparameter werden mit benannt Großbuchstaben und Unterstriche, zum Beispiel HTML_CACHE_ON=1; 🎜>Mehrere Zeilen mit Leerzeichen sind in Codedateien verboten, sofern nicht anders erforderlich.

2. Einrückung

Im Code ist eine entsprechende Einrückung erforderlich, da sonst die Wartung schwieriger wird.


3. Verzeichnisstruktur

Änderungen der Verzeichnisstruktur sind nicht zulässig, außer unter besonderen Umständen Der Standardwert ist MVC. Die Verzeichnisstruktur der Architektur vermeidet Wartungsschwierigkeiten, die durch Änderungen der Verzeichnisstruktur verursacht werden. Die Controller-Datei wird im Controller-Verzeichnis abgelegt, die Modelldatei wird im Model-Verzeichnis abgelegt und die View-Datei wird im View-Verzeichnis abgelegt. Ändern Sie den Speicherort und Namen des Verzeichnisses nicht nach Belieben.

3. Sicherheit

Eingabefeld

Bitte legen Sie den Maximalwert für alle fest Eingabefelder Länge, bitte nehmen Sie erforderliche Einschränkungen für erforderliche Felder vor. Beispielsweise kann die Kontonummer CHN00000001 nur 11 Ziffern eingeben, sodass die maximale Eingabelänge nur 11 betragen kann und das Attribut „erforderlich“ = „erforderlich“ hinzugefügt wird.
2. Texteditor

Versuchen Sie, auf der Startseite keinen Rich-Text-Editor zu verwenden, da der Rich-Text-Editor Codes eingeben kann, was ein großes Sicherheitsrisiko darstellt . Wenn Sie es verwenden möchten, müssen die übermittelten Inhalte gefiltert werden, beispielsweise mit htmlspecialchars().

3. Parameter im Hintergrund empfangen

PHP muss den Feldtyp beurteilen, wenn Parameter aus der Formularerfassungs-URL abgerufen werden. Parameter, die Zahlen empfangen, dürfen beispielsweise keine anderen Zeichen, sondern nur Zahlen enthalten. Es wird empfohlen, eine öffentliche Funktion zu schreiben, um den empfangenen Beitrag zu überprüfen und Parameter abzurufen und jeden Parameterwert zu überprüfen, um das Einschleusen von Schadcode zu verhindern. Beim Empfang von Variablen mit langem Inhalt, z. B. Nachrichteninhalten, muss eine Sonderzeichenfilterung durchgeführt werden. Beispielsweise können Funktionen wie strip_tags(), htmlspecialchars() und htmlentities() dazu dienen, Benutzer daran zu hindern, schädlichen Code für Cross-Site-Scripting-Angriffe einzuschleusen.
4. Berechtigungskontrolle

Jede Seite, die angemeldet werden muss, bevor sie aufgerufen werden kann, muss vor dem Laden angemeldet werden , müssen Sie sich erneut anmelden. Seiten und Funktionen, für deren Zugriff eine Berechtigung erforderlich ist, müssen über eine Berechtigungskontrolle und -erkennung verfügen.

Parallelität und große Datenverkehrsverarbeitung

1. Wiederholte Übermittlungen

Um zu verhindern, dass Benutzer wiederholt Formulare einreichen . Das Formular muss auf die Übermittlung der Bestätigung eingestellt sein. Wenn beispielsweise ein Einkaufszentrum eine Bestellung aufgibt, muss es verhindern, dass Benutzer diese wiederholt aufgeben. Die im Thinkphp-Framework bereitgestellte Formular-Token-Funktion kann wiederholte Übermittlungen verhindern. Natives PHP kann auch vor dem Öffnen der Seite ein Token generieren, es in der Sitzung speichern und das Token dann an das Seitenformularfeld übergeben Das Token wird zusammen im Hintergrund übermittelt. Überprüfen Sie das Token beim Empfang und zerstören Sie das gespeicherte Token der Sitzung nach der Überprüfung.

2. Sitzung

Die einmalige Überprüfungssitzung muss nach der Verwendung zerstört werden, z. B. SMS-Überprüfung, Formularüberprüfung usw., um die einmalige Überprüfung zu verhindern Wenn die Sitzung mit dem SMS-Bestätigungscode bei der Registrierung nicht zerstört wird, können Benutzer mehrere Konten mit demselben SMS-Bestätigungscode registrieren.

3. Parallelität

Es kommt häufig zu einer gleichzeitigen Verarbeitung, beispielsweise bei der Flash-Sale-Funktion des Einkaufszentrums von mehreren Benutzern gekauft.

Parallelitätsverarbeitungslösungen können die folgenden Lösungen in Betracht ziehen:

(1) Tabellenbetrieb sperren, der Nachteil besteht darin, dass bei relativ großer Anzahl von Parallelitäten dies dazu führt Systemverzögerung.

(2) Warteschlange

(3) Lastausgleich

(4) Datenbank-Lese- und Schreibtrennung

(5) Nginx als http-Server verwenden

4. Cache

Für Datenbankdaten, auf die häufig zugegriffen werden muss, können Sie Caching verwenden, um die Zugriffsgeschwindigkeit zu verbessern und Cache-Dateien zu lesen Die Datenwährungsdatenbank ist viel schneller. Die wichtigsten Caching-Technologien sind:

(1) Thinkphps eigene S()-Methode

(2) Lesen und Schreiben von Dateien Gewährleistung der Sicherheit.

(3) Memcached

Empfohlenes Tutorial: PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWelche Spezifikationen sind für die PHP-Entwicklung zu beachten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn