ホームページ >バックエンド開発 >PHPの問題 >php は厳密に型指定された言語ですか?

php は厳密に型指定された言語ですか?

(*-*)浩
(*-*)浩オリジナル
2019-09-18 09:42:074072ブラウズ

弱い型指定言語では、メモリの一部を複数の型として表示できます。たとえば、整数変数と文字変数を直接追加します。 C と C は静的言語ですが、型が弱い言語でもあります。Perl と PHP は動的言語ですが、型が弱い言語でもあります。

php は厳密に型指定された言語ですか?

#PHP は弱い型指定の言語です。

この変数を宣言する必要はないことに注意してください。 PHP データ型に変換します。

PHP は、変数をその値に基づいて正しいデータ型に自動的に変換します。 (推奨される学習: PHP プログラミングの入門から熟練度まで )

厳密に型指定されたプログラミング言語では、使用する前に変数を宣言 (定義) する必要があります 型と名前。

強い型と弱い型

強い型指定: 言語内のすべてのプログラムが適切に動作している場合、つまり、禁止された動作が行われている場合言語は厳密に型指定されているため、不可能です。

弱い型の弱い型付け: それ以外の場合、弱い型付けされます。たとえば、C 言語のバッファ オーバーフローは、トラップされたエラー、つまり禁止された動作に属します。したがって、C は弱い型です。暗黙的な型変換。たとえば、C言語のintはdoubleに変換できます。結果は次のようになります: 禁止された動作を生成するのは簡単なので、弱い型付けになります。

動的、静的型

静的に静的な型: 不正な動作をするプログラムが拒否された場合コンパイル時に静的に型付けされます。

動的型動的: 実行時に不正な動作が拒否された場合、動的に型付けされます。

誤解

C言語ではint a、int bなどを書く必要があるとみんな思っていますが、Pythonでは書く必要はありません(a、bと書いても大丈夫です)直接)、したがって、C は静的であり、Python は動的です。この理解は十分に正確ではありません。たとえば、Ocaml は静的に型指定されますが、明示的に記述する必要はありません。 。

Ocaml は静的暗黙型です

静的型は 2 つの型に分類できます:

型が言語構文の一部である場合、それは明示的に型指定されている明示的な型;

型がコンパイル時に推定される場合、暗黙的に型指定されます (ML や Haskell など)

以上がphp は厳密に型指定された言語ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。