Heim > Backend-Entwicklung > PHP-Problem > Ist PHP eine stark typisierte Sprache?

Ist PHP eine stark typisierte Sprache?

王林
Freigeben: 2023-02-24 13:22:02
Original
4085 Leute haben es durchsucht

Ist PHP eine stark typisierte Sprache?

PHP ist eine schwach typisierte Sprache

Wir beachten, dass es nicht notwendig ist, den Datentyp der Variablen in PHP zu deklarieren.

PHP konvertiert die Variable basierend auf ihrem Wert automatisch in den richtigen Datentyp. In einer stark typisierten Programmiersprache müssen wir den Typ und den Namen der Variablen deklarieren (definieren), bevor wir sie verwenden.

1. Definieren Sie zunächst einige grundlegende Konzepte

Programmfehler

abgefangene Fehler. Bewirkt, dass das Programm die Ausführung beendet, z. B. Division durch 0, Array außerhalb der Grenzen, Zugriff auf nicht abgefangene Fehler in Java. Die Ausführung wird nach einem Fehler fortgesetzt, es kann jedoch zu willkürlichem Verhalten kommen. Zum Beispiel Pufferüberlauf in C, Sprung zu falscher Adresse

Verbotene Verhaltensweisen

Beim Entwerfen einer Sprache können Sie eine Reihe verbotener Verhaltensweisen definieren. Diese müssen alle enthalten nicht abgefangene Fehler, aber es kann abgefangene Fehler enthalten.

Gut benommen, schlecht benommen

gut benommen: Wenn während der Programmausführung verbotene Verhaltensweisen nicht möglich sind, handelt es sich um gutes Benehmen .

schlecht benommen: Ansonsten ist es schlecht benommen...

2. Lassen Sie uns mit den oben genannten Konzepten starke und schwache Typen, statische und dynamische Typen diskutieren

Starke und schwache Typen

Stark typisiert: Wenn sich alle Programme in einer Sprache gut verhalten – das heißt, verbotene Verhaltensweisen sind unmöglich, dann ist die Sprache ist stark typisiert.

Schwach getippt: Ansonsten ist es schwach getippt. Beispielsweise gehört der Pufferüberlauf in der C-Sprache zu abgefangenen Fehlern, also zu verbotenen Verhaltensweisen. Wie bereits erwähnt, haben schwach typisierte Sprachen eine weniger strenge Typprüfung, z. B. die Bevorzugung impliziter Typen Konvertierungen. Beispielsweise kann int in der C-Sprache in double umgewandelt werden. Das Ergebnis ist: Es ist leicht, verbotene Verhaltensweisen zu erzeugen, daher handelt es sich um einen schwach typisierten

dynamischen und statischen Typ

statischen statischen Typ: Wenn fehlerhafte Programme zur Kompilierungszeit abgelehnt werden, werden sie statisch typisiert.

Dynamisch typisiert.: Wenn fehlerhafte Programme zur Laufzeit abgelehnt werden, werden sie dynamisch typisiert.

3. Missverständnis
Jeder denkt, dass die C-Sprache int a, int b und dergleichen schreiben muss, aber Python muss nicht schreiben (Sie können a, b direkt schreiben). ), also ist C statisch. Dieses Verständnis ist nicht genau genug. Ocaml ist beispielsweise statisch typisiert, muss aber nicht explizit geschrieben werden. Ocaml ist ein statischer impliziter Typ

Statische Typen können in zwei Typen unterteilt werden:
Wenn der Typ Teil der Sprachsyntax ist, handelt es sich um einen explizit typisierten expliziten Typ Typ wird durch Derivation kompiliert und ist implizit typisiert, wie ML und Haskell
4 Hier sind einige Beispiele
untypisiert: Assembly
Schwacher Typ, statischer Typ: C/C++
Schwache Typisierung, dynamische Typprüfung: Perl/PHP
Starke Typisierung, statische Typprüfung: Java/C#
Starke Typisierung, dynamische Typprüfung: Python, Scheme
Statische explizite Typisierung: Java/C
Statisch implizite Typen: Ocaml, Haskell

Der obige Inhalt dient nur als Referenz!

Empfohlenes Tutorial: PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonIst PHP eine stark typisierte Sprache?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage