PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPでdefine()とconstを比較する


define()とconstの両方を知っているように PHPスクリプトで定数を宣言するために使用されます。

構文

<?php
   const VAR = 'FOO'
   define('VAR', 'FOO');
?>

これら2つの違いについて説明しましょう。

  • これら2つの基本的な違いは、 const コンパイル時に定数を定義しますが、 define() 実行時にそれらを定義します。
  • constは使用できません define()を使用しながら、条件付きブロックで定数を宣言するキーワード 私たちはそれを達成することができます。
  • <?php
       if(){
       const VAR = 'FOO'; // invalid
       }
       if(){
       define('VAR', 'FOO'); //valid
       }
    ?>
  • const 静的スカラー(数値、文字列、またはtrue、false、null、__ FILE__などの他の定数)を受け入れますが、 define() 任意の表現を取ります。
  • 定数 define()に対して、常に大文字と小文字が区別されます 3番目の引数としてtrueを渡すことにより、大文字と小文字を区別しない定数を定義できます。

  • const define()の場合、クラスまたはインターフェイス内でクラス定数またはインターフェイス定数を宣言するために使用することもできます。 このため利用できません
  • <?php
       class abc{
          const VAR = 2; // valid
          echo VAR; // valid
       }
    // but
       class xyz{
          define('XUV', 2); // invalid
          echo XUV;// invalid
       }
    ?>
  • 上記の例は、 constを使用してクラス内で定数を宣言できることを示しています。 キーワードですがdefine() クラス内で定数を宣言するために使用することはできません。

  1. PHPのasort()関数

    asort()関数は、連想配列を昇順の配列で並べ替え、インデックスの関連付けを維持します。 構文 asort(arr, compare) パラメータ 到着 −指定された配列。 比較 −配列要素/アイテムを比較する方法を指定します。可能な値- SORT_STRING −アイテムを文字列として比較する SORT_REGULAR −タイプを変更せずにアイテムを比較する SORT_NUMERIC −アイテムを数値で比較する SORT_LOCALE_STRING −現在のローカルに基づいて、アイテムを文字列として比較します。 SORT_NATU

  2. PHPのarsort()関数

    arsort()関数は、配列を逆の順序で並べ替え、インデックスの関連付けを維持します。 構文 arsort(arr, compare) パラメータ 到着 −指定された配列。 比較 −配列要素/アイテムを比較する方法を指定します。可能な値- SORT_STRING-アイテムを文字列として比較します SORT_REGULAR-タイプを変更せずにアイテムを比較します SORT_NUMERIC-アイテムを数値で比較する SORT_LOCALE_STRING-現在のロケールに基づいて、アイテムを文字列として比較します。 SORT_NATURAL-自然順序付けを使