PHP では、define() 関数を使用して定数を定義します。構文は「define($name, $value, $case_insensitive)」です。パラメータ「$case_insensitive」は、定数を定義するかどうかを指定するために使用されます。定数は大文字と小文字を区別します。デフォルトでは大文字と小文字が区別されます。値が true に設定されている場合は、大文字と小文字が区別されないことを意味します。定数を一度定義すると、再定義したり、定義を解除したりすることはできません。
このチュートリアルの動作環境: Windows7 システム、PHP8 バージョン、DELL G3 コンピューター
define は PHP の組み込み関数です。定数を定義するために使用されます。
定数は単純な識別子です。この値は、スクリプトの実行中に変更できません (定数ではない、いわゆるマジック定数を除く)。定数はデフォルトで大文字と小文字が区別されます。通常、定数識別子は常に大文字です。
定数は変数に似ています。違いは、定数の値を設定後は変更できないことです。先頭にドル記号 ($) を付ける必要はありません。スコープは変数へのアクセスには影響しません。定数。定数の値は文字列または数値のみです。
define() 関数は定数を定義します
有効な定数名は文字とアンダースコアのみで始まり、その後に文字、数字、またはアンダースコアを続けることができます。任意の長さ。 PHP では、define() 関数を使用して定数を定義できます。define() 関数の構文は次のとおりです:
define($name, $value , $case_insensitive)
$name 必須パラメータ、定数名(二重引用符を使用するか、一重引用符で囲む必要があります)
$value 必須パラメータ、定数の値
$case_insensitive オプションのパラメータ, 大文字と小文字を区別するかどうかを指定します。デフォルトでは大文字と小文字が区別されます。true に設定すると、大文字と小文字が区別されないことを意味します。
#拡張知識:const キーワードは定数を定義します
php5.3.0 以降では、const キーワードを使用してクラス定義の外で定数を定義できます。以前のバージョンでは、const キーワードはクラス ( class) 内でのみ使用できます。
構文:<?php header("Content-type:text/html;charset=utf-8"); define('WebSite', 'php中文网'); echo WebSite.'<br>'; ?>例:
const 常量名 = 常量值;
define() と const の違い:
const はコンパイル時に定義されます。 time 定数、define() メソッドは実行時に定数を定義します。 const は if ステートメントでは使用できませんが、defne() は if ステートメントで使用できます。<?php const FOO = 'BAR'; echo FOO.'<br>'; ?>define() 一般的なシナリオは、定数を定義する前に、定数が定義されているかどうかをまず確認することです。
if(...) { const FOO = 'BAR';//错误 } if(...) { define('FOO', 'BAR');//正确 }const 定数を定義する場合、値は静的スカラー ( number、string、true、false、null)、define() メソッドは任意の式の値を定数の値として使用できます。 PHP 5.6 以降、const では式を定数の値として使用することもできます。
if(defined('FOO)) { define('FOO', 'BAR') }
const BIT_5 = 1 << 5; //PHP5.6后支持,之前的PHP版本不支持 define('BIT_5', 1 << 5);// 所有PHP版本都支持const 只允许简单的常量名,而define()可以把任何表达式的值用作常量名const 定義される定数名は大文字と小文字が区別されます。大文字と小文字を区別しない定数は、define() メソッドの 3 番目のパラメーターに true を渡すことで定義できます。
for ($i = 0; $i < 32; $i++) { define('BIT_' . $i, 1 << $i); }上に挙げたのは、define() と比較した const のいくつかの欠点または柔軟性の低さです。定数を定義するために、define() の代わりに const を使用することを私が個人的に推奨する理由を見てみましょう (定数を定義する必要がある場合を除く)上記のシナリオ)。 const は読みやすさに優れており、const は関数ではなく言語構造であり、クラス内でクラス定数を定義する形式と一致しています。 const は現在の名前空間の定数を定義します。また、同様の効果を実現するために、定義するときに、define() は完全な名前空間名を渡す必要があります:
define('FOO', 'BAR', true); echo FOO; //BAR echo foo; //BAR推奨学習: 「
PHP ビデオ チュートリアル##」 #》
以上がphp定義の用途は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。