回答編集履歴

1

プロパティをクラス直下で宣言する場合について追記

2019/11/13 02:27

投稿

maisumakun
maisumakun

スコア145192

test CHANGED
@@ -2,4 +2,32 @@
2
2
 
3
3
 
4
4
 
5
- 、そのとおりです。PHPではそう書かないと**ローカル変数**となってしまい、プロパティとして動作しません。
5
+ コンストラクタで定義する場合や、メソッドから読み書きする場合は、そのとおりです。PHPではそう書かないと**ローカル変数**となってしまい、プロパティとして動作しません。
6
+
7
+
8
+
9
+ クラス直下に書く場合は、`$foo`だけでプロパティを意味します(なお、この場合定数式しか初期化に使えません)。
10
+
11
+
12
+
13
+ ```php
14
+
15
+ class someClass {
16
+
17
+ // ここで宣言したものはプロパティになる
18
+
19
+ public $foo = 3;
20
+
21
+
22
+
23
+ public function __construct() {
24
+
25
+ // メソッド内からは$this経由が必要
26
+
27
+ $this->bar = date('Y');
28
+
29
+ }
30
+
31
+ }
32
+
33
+ ```