PHPでは、定数は変更されていない変数であり、その値が定義されると変更できません。通常、定数は、構成情報、一般的に使用される数学定数など、固定されたグローバルに利用可能な値を保存するために使用されます。constは、 define()またはconstキーワードを使用してPHPで定義されます。定数の値を変更することはできませんが、場合によっては、特に浮動値を扱う場合は、定数の値を確認する必要があります。
IS_Double()関数は、変数の値が二重精度の浮動小数点数(つまり、フロートタイプ)であるかどうかを検出するPHPの組み込み関数です。この関数はブール値を返し、 trueは変数のタイプが2倍の浮上点数であることを意味し、 falseは変数が浮動小数点数ではないことを意味します。
この記事では、 IS_Double()関数を使用して、定数の値が定数を定義するときに浮動小数点数タイプであるかどうかを確認する方法を検討します。
まず、定数を定義する方法を見てみましょう。 PHPでは、 Define()またはconstを使用して定数を定義できます。定義()は定数を動的に定義するために使用されますが、 constはクラスと関数の外側の定数を定義するためによく使用されます。
<span><span><span class="hljs-title function_ invoke__">define</span></span><span>(</span><span><span class="hljs-string">"PI"</span></span><span>, </span><span><span class="hljs-number">3.14159</span></span><span>);
</span><span><span class="hljs-keyword">const</span></span><span> </span><span><span class="hljs-variable constant_">E</span></span><span> = </span><span><span class="hljs-number">2.71828</span></span><span>;
</span></span>
上記のコードでは、 PIとEの両方が浮動点タイプの定数です。 is_double()を使用して、それらが浮動小数点番号のかどうかを検出します。
IS_Double()関数は、主に変数が浮動小数点数タイプであるかどうかを確認するために使用されます。 PHPでは、フロートのタイプはフロートですが、構文の互換性の場合、PHPではis_double()がそれを確認することができます。したがって、この関数を使用して、定数が浮動型かどうかを確認できます。
以前に定義した定数PIとEが浮動型であるかどうかを確認する例を書きましょう。
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-title function_ invoke__">define</span></span><span>(</span><span><span class="hljs-string">"PI"</span></span><span>, </span><span><span class="hljs-number">3.14159</span></span><span>);
</span><span><span class="hljs-keyword">const</span></span><span> </span><span><span class="hljs-variable constant_">E</span></span><span> = </span><span><span class="hljs-number">2.71828</span></span><span>;
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">is_double</span></span><span>(PI)) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"PI is a double.\n"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"PI is not a double.\n"</span></span><span>;
}
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">is_double</span></span><span>(E)) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"E is a double.\n"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"E is not a double.\n"</span></span><span>;
}
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>
上記のコードでは、 piとeの両方がフローティングタイプの定数であるため、is_double(pi)とis_double(e)の両方がtrueを返します。出力は次のとおりです。
<span><span>PI </span><span><span class="hljs-keyword">is</span></span><span> a </span><span><span class="hljs-built_in">double</span></span><span>.
E </span><span><span class="hljs-keyword">is</span></span><span> a </span><span><span class="hljs-built_in">double</span></span><span>.
</span></span>
is_double()を使用してフローティングタイプの定数を確認できますが、次のポイントに注意する必要があります。
is_double()は、phpのis_float()関数に置き換えられ、 is_float()およびis_double()は同等です。したがって、 is_double()の代わりにis_float()を使用できます。
定数のタイプはPHPで固定されているため、定数をdefine()またはconstを介して定義する場合、値を明示的に変更しない限り、常に浮動型になります。ただし、定数が定義されると、その値を変更することはできません。
is_double()を使用する場合、定数の値が整数型( define( "int_const"、100); )である場合、 falseを返します。
is_double()またはis_float()関数を介して、定数の値が浮動型であるかどうかを簡単に確認できます。これは、特にいくつかの数学的計算または構成管理シナリオでデータ型を正確に判断するシナリオに非常に役立ちます。定数を定義するとき、定数のタイプを適切にチェックすることで、コードの保守性と安定性が向上する可能性があります。