回答編集履歴
2
表現を具体的に調整
test
CHANGED
@@ -18,14 +18,32 @@
|
|
18
18
|
|
19
19
|
当月の時は$year,$monthがURLパラメータに設定されないときとかもあるでしょう。
|
20
20
|
|
21
|
-
Laravelには必須パラメータと任意パラメータがありますし。
|
21
|
+
Laravelのルーティングには必須パラメータと任意パラメータがありますし。
|
22
22
|
|
23
23
|
初期当月とするのであればパラメータに何も指定しない(URLがキレイだから)という仕様にすることもあります。
|
24
24
|
|
25
|
+
URLパラメータでなくても入力値でカレンダーを作りたい時もあります。
|
26
|
+
|
25
|
-
そういときに引数で渡す際にデフォルトで当月の$year,$monthを渡しておき、それ以外は渡されたパラメータをセットすれば任意の月のカレンダーを作れます。
|
27
|
+
そういうときに引数で渡す際にデフォルトで当月の$year,$monthを渡しておき、それ以外は渡されたパラメータをセットすれば任意の月のカレンダーを作れます。
|
26
28
|
|
27
29
|
|
28
30
|
|
29
31
|
CarbonでなくてもLaravelでなくても、PHPでなくても、考え方は同じです。
|
30
32
|
|
31
|
-
**任意の月のカレンダーを作るために**引数
|
33
|
+
**任意の月のカレンダーを作るために**必要な引数です。
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
常に当月だけで良いなら引数と$dateStrを作る処理は不要かもしれませんが
|
38
|
+
|
39
|
+
変更が発生しないシステムは存在しないと言っても良いので、引数により作るようにしておけば
|
40
|
+
|
41
|
+
変更に強い実装となります。
|
42
|
+
|
43
|
+
|
44
|
+
|
45
|
+
※この考え方はカレンダーに限らず様々な場面で使えます。
|
46
|
+
|
47
|
+
「これしかない」前提で作るとどんどんファットでスパゲッティなコードになっていきます。
|
48
|
+
|
49
|
+
役割分担の考え方です。1つの機能で短い記述でなるべく多くの仕事をこなせたほうがコードはスッキリします。
|
1
修正
test
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
|
4
4
|
|
5
|
-
> $date = new Carbon();こちらのようにカーボンインスタンスを作成すれば
|
5
|
+
> $date = new Carbon();こちらのようにカーボンインスタンスを作成すれば現在の日付が取得できる
|
6
6
|
|
7
7
|
|
8
8
|
|
@@ -18,10 +18,14 @@
|
|
18
18
|
|
19
19
|
当月の時は$year,$monthがURLパラメータに設定されないときとかもあるでしょう。
|
20
20
|
|
21
|
+
Laravelには必須パラメータと任意パラメータがありますし。
|
22
|
+
|
23
|
+
初期当月とするのであればパラメータに何も指定しない(URLがキレイだから)という仕様にすることもあります。
|
24
|
+
|
21
|
-
そい
|
25
|
+
そういときに引数で渡す際にデフォルトで当月の$year,$monthを渡しておき、それ以外は渡されたパラメータをセットすれば任意の月のカレンダーを作れます。
|
22
26
|
|
23
27
|
|
24
28
|
|
25
29
|
CarbonでなくてもLaravelでなくても、PHPでなくても、考え方は同じです。
|
26
30
|
|
27
|
-
**任意の月のカレンダーを作るために**引数
|
31
|
+
**任意の月のカレンダーを作るために**引数は必要です。
|