PHP 初心者: 自習バックエンド管理システムにおける
というフレーズは何を意味しますか?この 2 つのコロンは何を意味しますか?初心者なので分かりやすく説明していただけると幸いです。
------解決策----------------------
マニュアル:
スコープ解決演算子 ( ::)
注
次の内容は、PHP 4 以降のバージョンでのみ有効です。
インスタンスを宣言せずに、クラス内の関数、または基本クラス内の関数と変数にアクセスすると便利な場合があります。この場合、:: 演算子が使用されます。
class A {
function example() {
echo "私はオリジナルの function A::example() です。
n";
}
}
class B extends A {
function example() {
echo "私は再定義された関数 B::example() です。
A::example();
}
}
// クラス A にはオブジェクトがないため、出力されます
// 私がオリジナルですfunction A::example().
A::example();
// クラス B のオブジェクトを作成します
$b = new B;
// これは次のように出力されます
// 私は再定義された関数 B::example() です。
// 私は元の関数 A::example() です。< br />
$b->example();
?>
上記の例では、クラス A の関数 example() を呼び出していますが、クラス A は存在しません。ここではオブジェクトなので、$a->example() または同様のメソッドを使用して example() を呼び出すことはできません。代わりに、example() をクラス関数として、つまり、このクラスのオブジェクトではなく、クラス自体の関数として呼び出します。
ここにはクラス関数がありますが、クラス変数はありません。実際、関数が呼び出されるとき、オブジェクトはまったくありません。したがって、クラス関数はオブジェクトを使用できません (ただし、ローカル変数またはグローバル変数は使用できます)。また、$this 変数をまったく使用しないこともあります。
上記の例では、クラス B が関数 example() を再定義します。クラス A で元々定義されていた関数 example() は、クラス A の example() 関数にアクセスするために :: 演算子を使用しない限りマスクされ、無効になります。例: A::example() (実際には、parent::example() として記述する必要があります。これについては次の章で説明します)。
さらに言えば、現在のオブジェクトにはオブジェクト変数がある可能性があります。したがって、$this およびオブジェクト変数はオブジェクト関数内で使用できます。
-----ソリューションのアイデア----------------------
Log オブジェクトの WirteLog 静的メソッドを呼び出し、2 つのパラメータ 7 と $notice