phpの実践方法 静的キーワード_PHPチュートリアル

WBOY
リリース: 2016-07-21 15:37:08
オリジナル
856 人が閲覧しました

PHP4 との互換性のため、「visibility」が指定されていない場合、プロパティとメソッドはデフォルトで public になります。
静的メソッドはオブジェクトを通じて呼び出す必要がないため、疑似変数 $this は静的メソッドでは使用できません。
静的プロパティには、-> 演算子を使用してオブジェクトからアクセスすることもできます。
:: メソッドを使用して非静的メソッドを呼び出すと、E_STRICT レベルのエラーが発生します。
他のすべての PHP 静的変数と同様、静的プロパティは文字値または定数にのみ初期化でき、式は使用できません。 したがって、静的プロパティを整数または配列に初期化することはできますが、別の変数や関数の戻り値、またはオブジェクトを指すことはできません。
PHP5.3.0 以降では、変数を使用してクラスを動的に呼び出すことができます。ただし、この変数の値をキーワード self、parent、または static にすることはできません。

コードをコピー コードは次のとおりです:

class Foo
{
public static $my_static = 'foo'
public function staticValue() {
return self::$my_static ;
}
}
クラス Bar は Foo を拡張します
{
public function fooStatic() {
returnparent::$my_static;
}
print Foo::$my_static . );
print $foo->staticValue() . "n";
print $foo->my_static
print $foo::$my_static ;
$classname = 'Foo';
print $classname::$my_static . "n"; // PHP 5.3.0 以降では動的に呼び出すことができます
$bar = new Bar ();
print $bar->fooStatic() . "n";



PHP では静的プロパティとメソッドを定義するために使用されます。プロパティ

コードをコピー

コードは次のとおりです:
/* *author:ajax123 *qq:283400245 */ class person
static$name="aja ×123 ";//static は静的属性を宣言します
static$age=25;//static は静的属性を宣言します
static$address="北京";//static は静的属性を宣言します
function Song(){
echo "私の名前は : " .self::$name. "
";//内部クラス: selfクラスを通じて静的プロパティにアクセスします
echo "I am ".self::$age."
";//内部クラス: 自己クラス属性を通じて静的プロパティにアクセスします
echo "I live in ".self::$address."
";//クラス内: 自己クラスを通じて静的プロパティにアクセスします
}
}
echoperson: :$name."
" ;//クラスの外: クラス名 person
echoperson::$age."
";// クラスの外: 静的プロパティにアクセスclass name person
echoperson::$address."
;";//外部クラス: クラス名 person
?> を介して静的プロパティにアクセスします




例 2: 静的メソッドの参照メソッド




コードをコピーします
コードは次のとおりです:

< ?php
/* *author:ajax123 *qq:283400245 */ class person{
static$name="ajax123";/ /static 静的属性を宣言
static$age=25;//static 静的属性を宣言
static$address="Beijing";//static 静的プロパティを宣言
staticfunction Song(){ //静的メソッド Song を宣言
echo "私の名前is : ".self::$name."
";/ /内部クラス: self クラスを通じて静的プロパティにアクセスします
echo "I am ".self::$age."
";/ /内部クラス: 自己クラスを通じて静的プロパティにアクセスします
echo "I live in " .self::$address."
";//クラス内部: 自己クラスを通じて静的プロパティにアクセスします
}
}
person::song()."
";//クラスの外: クラス名を通じて person が静的メソッドにアクセスします

;



http://www.bkjia.com/PHPjc/322005.html

www.bkjia.com

tru​​ehttp://www.bkjia.com/PHPjc/322005.html

技術記事 PHP4 との互換性のため、「visibility」が指定されていない場合、プロパティとメソッドはデフォルトで public になります。 静的メソッドはオブジェクトを通じて呼び出す必要がないため、疑似変数 $this は静的メソッドでは使用できません...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート