次のインクルード ファイルを想像してくださいhello.php
。
function hello()
{
return 'Hello World';
}
$a = 0;
次のファイルを想像してくださいindex.php
。
include 'hello.php';
$a = 1;
hello();
include 'hello.php';
hello();
echo $a; // $a = 0, not 1
関数が 2 回定義されているため、コードに致命的なエラーが発生します。を使用include_once
すると、一度しか含まれないため、これを回避できますhello.php
。また、variable value reassignment
($a
コードをコンパイルする必要がある) を 0 にリセットします。
コメントから、これを副次的な回答と考えてください-変数のセットを何度もリセットする必要があるものを探している場合は、のようなメソッドでこれにクラスを使用することを検討します。Reset
静的にすることもできますインスタンス化する必要がなかった場合は、次のようにします。
public class MyVariables
{
public static $MyVariable = "Hello";
public static $AnotherVariable = 5;
public static function Reset()
{
self::$MyVariable = "Hello";
self::$AnotherVariable = 5;
}
}
次のような使い方:
MyVariables::$MyVariable = "Goodbye";
MyVariables::Reset();
echo MyVariables::$MyVariable; // Hello