PHPのgettype()とPHP 8のget_debug_type()の違い
以前のバージョンのPHPでは、変数の型を取得する場合は、 gettype()を使用していました。 働き。この関数は、文字列のカスタムで変数の型を返します。整数、文字列、配列、ブール値、倍精度浮動小数点数、リソース、NULL、不明な型など、考えられるすべての値を返します。
ただし、 gettypeに問題がありました 働き。ネイティブで使い慣れたタイプ名は返されません。 floatの代わりにdoubleを返し、intの代わりにintegerを返します。
この問題を克服するために、PHP8は get_debug_typeを使用します 機能。
get_debug_type()関数
PHP 8では、 get_debug_type 関数は、変数の真のネイティブタイプを返します。 doubleとintegerの代わりにfloat、intを返します。この関数は、オブジェクトのクラス名を自動的に解決します。
get_debug_type() 関数は
に役立ちます-
デバッグ
-
ビジネスロジック
-
エラー報告
例:PHPでgettype()関数を使用する
<?php class Novel {} class Comments {} $novel = new Novel(); if(! ($novel instanceof Comment)) { echo 'Expected ' . Comment::class . ' still got My' . (is_object($novel) ? get_class($novel) : gettype($novel)); } ?>
出力
Expected Comment still got MyNovel
例:PHP 8でget_debug_type()関数を使用する
<?php class Novel {} class Comments {} $novel = new Novel(); if(! ($novel instanceof Comment)) { echo 'Expected '.Comment::class.' still got My'.get_debug_type($novel); } ?>
出力
Expected Comment still got MyNovel
-
C#でのメソッドと関数の違い
メソッドと関数はC#でも同じです。 ただし、メソッドはC#で使用され、指定されたクラスを介して動作する関数です。メソッドは、一緒にタスクを実行するステートメントのグループです。すべてのC#プログラムには、Mainという名前のメソッドを持つクラスが少なくとも1つあります。 以下は、C#でメソッドを作成する方法を示す簡単な例です。 例 class NumberManipulator { public int FindMax(int num1, int num2) { /* local variable declaration
-
Pythonのメソッドと関数の違い
機能 関数は、特定のタスクを実行するためのコードのブロックであり、独自のスコープを含み、名前で呼び出されます。すべての関数には、ゼロ(no)引数または複数の引数を含めることができます。終了時に、関数は1つ以上の値を返すことができる場合とできない場合があります。 基本的な関数構文 def functionName( arg1, arg2,….): ……. # Function_body …….. 独自の(ユーザー)、sum(ユーザーは任意の名前を