28

グローバルな、つまりすべてのPHPファイルで利用可能な定数を定義するための最良の方法は何ですか?

更新:定数とクラス定数の違いは何ですか?それらは交換可能に使用できますか?

4

7 に答える 7

29

他のすべてのスクリプトに含まれる最上位の.php ファイルで定数を定義します。これは、フロントコントローラー、構成ファイル、またはこの単一の目的のために作成されたファイルである可能性があります。

!defined('MY_CONST') && define('MY_CONST', 'hello');
于 2012-05-21T19:33:46.513 に答える
10

以下をせよ:

define("CONSTANT_NAME","value");

他のphpファイルからこの定数にアクセスしたい場合は、それを含める必要があります:

include_once("thefilewiththeconstant.php");
于 2012-05-21T19:34:21.563 に答える
3

PHP ファイル全体でグローバル定数を使用したい場合、オブジェクト指向の原則を使用し、関連するクラスでこれらを定義することをお勧めします。PHP に組み込まれている spl_autoload_register() 関数を使用すると、以降のすべてのクラスを定義して、関連する「グローバル クラス」を拡張することができます。そのグローバル クラスのそれ以降の子クラスはすべて、関連するグローバル変数に常にアクセスできます。(関連があると言うのは、クラス内のグローバル定数をなんらかの方法で関連付けるのが良い設計だからです。韻律や理由なしにすべてをグループ化するのではありません)

于 2016-08-30T05:28:02.933 に答える
1

これをチェックして

<?php
//Global scope variables
$a = 1;
$b = 2;

 function Sum()
 {
global $a, $b;

$b = $a + $b;
 } 

Sum();
echo $b;
?>
于 2012-05-21T19:42:22.203 に答える
0

どのファイルで定数を作成する場合でも、それらを使用するファイルに定数を要求/含める必要があります。

それ以外の場合は、$ _ SESSIONグローバルを使用できますがsession_start()、これらの各ファイルのコードの先頭でセッションを初期化する必要があります。

于 2012-05-21T19:38:39.460 に答える