


Detaillierte Erläuterung der Vor- und Nachteile der PHP-Goto-Anweisung
Sie können auf den ersten Blick erkennen, dass es ein Kind ist, das den Unterschied zwischen Gehe zu und Anruf nicht erkennen kann
Wenn Sie dann in der Gruppe Code eingeben, das Kätzchen benutzte Do...LoopLoop, aber ein Kind in der Gruppe fragte Do... Was ist Loop? -_-|||Als Ergebnis sagte eine Gruppe von Leuten, dass sie selten Do...Loop-Schleifen verwenden und die meisten von ihnen gerne Goto verwenden. Ich habe dieses Problem nicht entdeckt, dass man Goto nicht verwenden kann, sondern dass es so ist Verwenden Sie Goto less! ! !
Genug mit dem Unsinn, kommen wir zur Sache
Erklären Sie zunächst den Unterschied zwischen Goto und Call für Anfänger
Goto wird verwendet, um zum Code zu springen, also wann Der Code wird zu Goto ausgeführt, an die von Rem angegebene Position springen und nach unten ausgeführt . Nach Abschluss der Ausführung wird nicht zur nächsten Zeile der Goto -Anweisung zurückgekehrt.
Call wird auch zum Springen von Codes verwendet, genauer gesagt wird Call zum Aufrufen von Unterprogrammen verwendet! Was ist ein Anruf? Das heißt, wenn der Aufruf ausgeführt wird, wird die angegebene Unterroutine (Sub) in den Code eingefügt. Wenn die Unterroutine ausgeführt wird, kehrt sie zur nächsten Zeile der Call -Anweisung zurück und setzt die Ausführung nach unten fort.
Wenn es schwer zu verstehen ist, verwenden wir zur Erklärung den Code des am Anfang erwähnten Klassenkameraden:
| <🎜>Dies ist die Call-Anweisung<🎜> | ||||
1. Rem A 2. If false 3. goto B 4. End If 5. 6. Rem C 7. if true 8. goto A 9. ElseIf false 10. goto B 11. else 12. goto C 13. End If 14. 15. Rem B 16. //这样的代码可读吗,你可以划出流程图吗。而且goto完全是可以用其他语句代替的。 Nach dem Login kopieren Nach dem Login kopieren | 1. Do 2. Do 3. Do 4. If true 5. Goto 停止//利用goto跳出深层嵌套 6. End If 7. Loop 8. Loop 9. Loop 10. 11. Rem 停止 Nach dem Login kopieren Nach dem Login kopieren |
OK, die beiden Unterschiede wurden klar erklärt. Lassen Sie uns nun über dieses Thema sprechen, die Vor- und Nachteile von Goto-Anweisungen! ! !
Wie ich oben sagte, befürworte ich, dass Goto weniger verwendet werden sollte und nicht missbraucht werden darf. Einer der Hauptgründe ist, dass die Goto-Anweisung die Programmstruktur zerstört und das Programm weniger lesbar macht , Zwei haben vielleicht keine große Wirkung, aber was ist, wenn Sie mehr als ein Dutzend Gotos verwenden?
Die folgende Passage stammt aus der Baidu-Enzyklopädie (wenn Sie der Meinung sind, dass sie zu viel ist, müssen Sie nur den Abschnitt „Ergebnisse der Goto-Anweisung“ lesen)
Ursprung des Problems:
Seit Mitte der 1960er Jahre hat sich die Computerhardware-Technologie von Tag zu Tag verbessert. Die Speicherkapazität, die Rechengeschwindigkeit und die Zuverlässigkeit der Datenverarbeitung sind erheblich gestiegen, und die Kosten für die Herstellung von Hardware sind weiter gesunken. Der Rückgang der Computerpreise hat hervorragende Voraussetzungen für eine breite Anwendung geschaffen. In dieser Situation ist es dringend erforderlich, dass sich Computersoftware daran anpasst. Daher wurden einige Anforderungen für die Entwicklung großer Softwaresysteme gestellt. Der Fortschritt der Softwaretechnologie konnte den Anforderungen der Entwicklung der Situation jedoch nicht gerecht werden. Im Entwicklungsprozess großer Software sind drei Hauptprobleme aufgetreten: hohe Komplexität, langer Entwicklungszyklus und Schwierigkeiten bei der Gewährleistung der Genauigkeit . Es gibt keine Lösung für die aufgetretenen Probleme, was dazu führt, dass sich die Probleme häufen und eine Situation entstehen, die für die Menschen schwer zu kontrollieren ist. Es entsteht die sogenannte „Softwarekrise“. Um diese Krise zu überwinden, ist es einerseits notwendig, eine Reihe von Forschungen zu Themen wie Programmiermethoden, Programmkorrektheit und Softwarezuverlässigkeit durchzuführen, andererseits ist es auch notwendig, Forschungen zu Softwaremethoden durchzuführen Vorbereitung, Prüfung, Wartung und Verwaltung, wodurch Programmiermethodik entsteht.
Die Ansicht, dass Goto-Anweisungen schädlich sind:
1968 schlug E.W. Dykstra erstmals das Argument vor, dass „GOTO-Anweisungen schädlich sind“, um die traditionellen Programmiermethoden vor Herausforderungen zu stellen die der Diskussion über Programmiermethoden große Aufmerksamkeit geschenkt haben.
Kontroverse um die Goto-Anweisung:
In den späten 1960er und frühen 1970er Jahren war die Debatte über die Verwendung der GOTO-Anweisung heftig. Leute, die das Entfernen der GOTO-Anweisung aus höheren Programmiersprachen befürworten, glauben, dass die GOTO-Anweisung eine schädliche Anweisung ist, die den größten Einfluss auf die Programmstruktur hat. Ihr Hauptgrund ist, dass die GOTO-Anweisung das Programm statisch macht 🎜> Struktur und dynamische Struktur Inkonsistenzen erschweren das Verständnis und die Fehlerbehebung des Programms. Nach dem Entfernen der GOTO-Anweisung kann der Programmausführungsprozess direkt aus der Programmstruktur abgeleitet werden. Auf diese Weise wird nicht nur die Programmstruktur klar, leicht verständlich und fehlerüberprüfbar gemacht, sondern auch die Korrektheit des Programms nachgewiesen.
Gegner glauben, dass die GOTO-Anweisung flexibler zu verwenden ist und in einigen Fällen die Effizienz des Programms verbessern kann. Wenn die GOTO-Anweisung vollständig gelöscht wird, führt dies in manchen Fällen dazu, dass das Programm zu komplex wird und unnötige Berechnungen erforderlich werden.Zur Lösung der Goto-Aussage:
1974 gab D.E. Knuth einen umfassenden und fairen Überblick über die Kontroverse um die GOTO-Aussage:Die uneingeschränkte Verwendung der GOTO-Anweisung, insbesondere die Verwendung der zurückspringenden GOTO-Anweisung, führt zu einer Änderung der Programmstruktur ist schwer zu verstehen. In diesem Fall sollten Sie versuchen, die Verwendung der GOTO-Anweisung zu vermeiden. In anderen Fällen ist es jedoch erforderlich, einige GOTO-Anweisungen kontrolliert zu verwenden, um die Effizienz des Programms zu verbessern, ohne die gute Struktur des Programms zu zerstören. In seinen Worten: „In einigen Fällen befürworte ich die Streichung der GOTO-Erklärung; in anderen Fällen befürworte ich die Einführung der GOTO-Erklärung.“ Seitdem ist diese 10 Jahre alte Debatte beigelegt.
Später bewiesen G. Gaccopini und C. Boehm theoretisch, dass jedes Programm durch Sequenz-, Verzweigungs- und Wiederholungsstrukturen dargestellt werden kann. Diese Schlussfolgerung zeigt, dass das Entfernen der GOTO-Anweisung aus einer höheren Programmiersprache keinen Einfluss auf die Programmierfähigkeiten der höheren Programmiersprache hat und die Struktur des geschriebenen Programms klarer ist. [/hide]gotoDas Ergebnis der Anweisung:
Die goto-Anweisung bleibt in fortgeschrittenen Programmiersprachen
wie C/C++ erhalten, es wird jedoch empfohlen, sie nicht oder nur sparsam zu verwenden. In einigen如果有仔细看上面这段话的同学,相信能明白goto语句的利与弊了吧?
好吧,还是用代码来解释:
滥用goto语句的例子 | 合理利用goto语句 |
1. Rem A 2. If false 3. goto B 4. End If 5. 6. Rem C 7. if true 8. goto A 9. ElseIf false 10. goto B 11. else 12. goto C 13. End If 14. 15. Rem B 16. //这样的代码可读吗,你可以划出流程图吗。而且goto完全是可以用其他语句代替的。 Nach dem Login kopieren Nach dem Login kopieren | 1. Do 2. Do 3. Do 4. If true 5. Goto 停止//利用goto跳出深层嵌套 6. End If 7. Loop 8. Loop 9. Loop 10. 11. Rem 停止 Nach dem Login kopieren Nach dem Login kopieren |
讲解就到这里了,小猫的想法就是建议大家如果能不用goto就不用goto,尽量多使用Call,如果想跳出循环,每种循环都有对应的跳出语句,如exit do,exit for,exit sub,Exit Function
另外当大家需要用到循环时,建议使用Do...Loop和For...Next两者,而while循环比较绕口,完全可以用do和for代替他
Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Vor- und Nachteile der PHP-Goto-Anweisung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

Wenn Sie ein erfahrener PHP-Entwickler sind, haben Sie möglicherweise das Gefühl, dass Sie dort waren und dies bereits getan haben. Sie haben eine beträchtliche Anzahl von Anwendungen entwickelt, Millionen von Codezeilen debuggt und eine Reihe von Skripten optimiert, um op zu erreichen

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

Dieses Tutorial zeigt, wie XML -Dokumente mit PHP effizient verarbeitet werden. XML (Extensible Markup-Sprache) ist eine vielseitige textbasierte Markup-Sprache, die sowohl für die Lesbarkeit des Menschen als auch für die Analyse von Maschinen entwickelt wurde. Es wird üblicherweise für die Datenspeicherung ein verwendet und wird häufig verwendet

Eine Zeichenfolge ist eine Folge von Zeichen, einschließlich Buchstaben, Zahlen und Symbolen. In diesem Tutorial wird lernen, wie Sie die Anzahl der Vokale in einer bestimmten Zeichenfolge in PHP unter Verwendung verschiedener Methoden berechnen. Die Vokale auf Englisch sind a, e, i, o, u und sie können Großbuchstaben oder Kleinbuchstaben sein. Was ist ein Vokal? Vokale sind alphabetische Zeichen, die eine spezifische Aussprache darstellen. Es gibt fünf Vokale in Englisch, einschließlich Großbuchstaben und Kleinbuchstaben: a, e, ich, o, u Beispiel 1 Eingabe: String = "TutorialPoint" Ausgabe: 6 erklären Die Vokale in der String "TutorialPoint" sind u, o, i, a, o, ich. Insgesamt gibt es 6 Yuan

Statische Bindung (statisch: :) implementiert die späte statische Bindung (LSB) in PHP, sodass das Aufrufen von Klassen in statischen Kontexten anstatt Klassen zu definieren. 1) Der Analyseprozess wird zur Laufzeit durchgeführt.

Was sind die magischen Methoden von PHP? Zu den magischen Methoden von PHP gehören: 1. \ _ \ _ Konstrukt, verwendet, um Objekte zu initialisieren; 2. \ _ \ _ Destruct, verwendet zur Reinigung von Ressourcen; 3. \ _ \ _ Call, behandeln Sie nicht existierende Methodenaufrufe; 4. \ _ \ _ GET, Implementieren Sie den dynamischen Attributzugriff; 5. \ _ \ _ Setzen Sie dynamische Attributeinstellungen. Diese Methoden werden in bestimmten Situationen automatisch aufgerufen, wodurch die Code -Flexibilität und -Effizienz verbessert werden.
