ホームページ >バックエンド開発 >PHPチュートリアル >phpマニュアル2015-03-19版、php2015-03-19_PHPチュートリアルを読んだ後のメモ

phpマニュアル2015-03-19版、php2015-03-19_PHPチュートリアルを読んだ後のメモ

WBOY
WBOYオリジナル
2016-07-13 09:52:17866ブラウズ

PHP マニュアル バージョン 2015-03-19、php2015-03-19 を読んだ後のコメント

クラスとオブジェクト -> 基本概念:
1、############### # #############
::class
PHP 5.5 以降、キーワード class はクラス名の解決にも使用できます。 ClassName::class を使用すると、クラス ClassName の完全修飾名を含む文字列を取得できます。これは、名前空間を使用するクラスに特に役立ちます。
例 #7 ドキュメントに記載されているクラス名の解析は次のとおりです:
namespace NS {
class ClassName {
}
echo ClassName::class;
}
?>
上記のルーチンは次のように出力します。 NSClassName


2,###############################
念のために言っておきますが、前述のとおり、クラス名を検証する正しい方法です。ドキュメントの内容は次のとおりです:
$valid = preg_match('/^[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*$/', $className);

3,# ## ########################
属性内の変数は初期化できますが、初期化された値は定数である必要があります。ここでの定数は PHP を指します。スクリプトの値はコンパイル段階で取得でき、ランタイム情報に依存せずに評価できます。
PHP 5.3.0 では、変数を含まないヒアドキュメントの宣言も可能です。変数を含めるのは間違っています。


new static() は継承関係に従います、new はサブクラスです
new self() は継承されません、new は単語 self が配置されているクラスです


###
PHP 5.6 以降では、次のことができます最後に、次のように数式を使用して定数を設定します:
、名前空間では、クラス名と同じ名前のメソッドはコンストラクターではなくなります。この変更は、名前空間にないクラスには影響しません。
namespace Foo;
class Bar {
Public $a;
public function Bar() {
$this->a = 'ここまで';
}
public function getA(){
Return $ this->a;
}
}
$bar = new Bar();
echo $bar->getA(); // 名前空間を削除してここに出力します;



###
PHP 5.3.0 以降、値がキーワード (self、parent、static など) にできない変数を通じてクラスを参照できるようになりました。




組織の場合:
自分、親、静的
public (パブリック)、protected (保護された)、または private (プライベート)






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

www.bkjia.com

tru​​e

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

技術記事

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。