質問編集履歴
4
内容修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -3,6 +3,7 @@
|
|
3
3
|
|
4
4
|
[【Laravel】.envファイルの値を取得する](https://qiita.com/Akrosg/items/05a7200b8947868f2e45)ではこの書き方はおすすめしないと書いてあり、以下のように書くのを進めています。こちらの方が良いのでしょうか?
|
5
5
|
$environment = App::environment();
|
6
|
+
ただ、この場合、API_KEYなど他の値の取得方法が解らず、、ご教授お願いできましたら幸いです。
|
6
7
|
|
7
8
|
また、色々とソースをみてみたところ$_SERVERで取得しているケースもありましたが、問題ないのでしょうか?
|
8
9
|
|
3
お恥ずかしながらやっと理解が進み、環境変数が取得できたので、正しい方法が知りたく内容を変更しました
title
CHANGED
@@ -1,1 +1,1 @@
|
|
1
|
-
laravel envの
|
1
|
+
laravel envの環境変数の正しい取得方法
|
body
CHANGED
@@ -1,12 +1,18 @@
|
|
1
|
-
laravelのクラスでenvに登録した環境変数を取得したいのですが、
|
1
|
+
laravelのクラスでenvに登録した環境変数を取得したいのですが、色々参考にしましたが正しい取得方法がわからず、envの正しい取得方法について、どうかご教授お願い致します。
|
2
|
+
現状はconfig/my-app.phpというファイルを作り、そこに取得したい環境変数を入れて取得しています。が、キャッシュがらみで、状況によってはconfig:cacheコマンドを実行する必要があります。
|
2
3
|
|
4
|
+
[【Laravel】.envファイルの値を取得する](https://qiita.com/Akrosg/items/05a7200b8947868f2e45)ではこの書き方はおすすめしないと書いてあり、以下のように書くのを進めています。こちらの方が良いのでしょうか?
|
5
|
+
$environment = App::environment();
|
6
|
+
|
7
|
+
また、色々とソースをみてみたところ$_SERVERで取得しているケースもありましたが、問題ないのでしょうか?
|
8
|
+
|
3
9
|
■envの値についてやりたいこと、ソース
|
4
10
|
envに登録してあるAPI_KEYや、API_URLをclassでとってきたいです。
|
5
11
|
アクセス修飾子privateを$api_keyや$api_tokenに指定し、この変数にAPI_KEYとAPI_TOKENの値を入れて、同じクラス内で使いまわしたいと考えています。
|
6
|
-
config
|
12
|
+
現状はconfig/my-app.phpというファイルを作り、そこに取得したい環境変数を入れて取得しています
|
7
13
|
試しに$_SERVERを使ってみると目的の値は取得できましたが、安全な方法でしょうか?
|
8
|
-
また、.env内のAPP_ENV=stagingの値を削除してみたところ、productionが取得されました。
|
9
14
|
|
15
|
+
|
10
16
|
□TestServiceクラス
|
11
17
|
```
|
12
18
|
<?php
|
@@ -19,8 +25,9 @@
|
|
19
25
|
public function __construct()
|
20
26
|
{
|
21
27
|
//configを経由
|
28
|
+
$my_env = config('my-app.API_KEY');
|
22
|
-
$my_env
|
29
|
+
print_r($my_env);exit(); //////envのAPI_KEYが取得できました
|
23
|
-
|
30
|
+
$my_env = $_SERVER; /////試しに$_SERVERを使ってみると目的の値は取得できました。安全な方法でしょうか?
|
24
31
|
|
25
32
|
$api_key = $my_env['API_KEY'];
|
26
33
|
$api_token = $my_env['API_TOKEN'];
|
@@ -48,31 +55,21 @@
|
|
48
55
|
API_TOPKEN=xxxxxx
|
49
56
|
```
|
50
57
|
|
51
|
-
□config/app.php
|
58
|
+
□config/my-app.php
|
52
59
|
```
|
53
60
|
return [
|
54
61
|
|
55
|
-
'
|
62
|
+
'API_KEY' => env('API_KEY', 'production'),
|
56
63
|
|
57
|
-
他、省略....
|
58
|
-
・
|
59
|
-
・
|
60
|
-
・
|
61
|
-
・
|
62
64
|
]
|
63
65
|
```
|
64
66
|
|
65
67
|
|
66
68
|
|
67
|
-
□こちら↓ではconfig('app.env')が正しいと言っておりますが
|
69
|
+
□こちら↓ではconfig('app.env')が正しいと言っておりますが
|
68
70
|
[【Laravel】.envファイルの値の正しい取得方法【env関数を使うのは間違い】](https://yaba-blog.com/laravel-env/)
|
69
|
-
□こっち↓ではおすすめしないと言っています
|
70
|
-
[【Laravel】.envファイルの値を取得する](https://qiita.com/Akrosg/items/05a7200b8947868f2e45)
|
71
71
|
|
72
72
|
|
73
73
|
|
74
74
|
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
大変初歩的なことで申し訳ありません。普段はサンプルソースを引っ張ってきて実装するくらいのレベルで
|
75
|
+
大変初歩的なことで申し訳ありません。普段はサンプルソースを引っ張ってきて実装するくらいのレベルです。どうかご教授お願い致します。
|
2
誤記訂正
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
laravelのクラスでenvに登録した
|
1
|
+
laravelのクラスでenvに登録した環境変数を取得したいのですが、config('app.env')と書くとstagingが取得されるだけで目的の値が出てきません。また、色々参考にしましたが正しい取得方法がわからず、envの正しい取得方法について、どうかご教授お願い致します。
|
2
2
|
|
3
3
|
■envの値についてやりたいこと、ソース
|
4
4
|
envに登録してあるAPI_KEYや、API_URLをclassでとってきたいです。
|
1
誤記訂正
title
CHANGED
File without changes
|
body
CHANGED
@@ -3,8 +3,9 @@
|
|
3
3
|
■envの値についてやりたいこと、ソース
|
4
4
|
envに登録してあるAPI_KEYや、API_URLをclassでとってきたいです。
|
5
5
|
アクセス修飾子privateを$api_keyや$api_tokenに指定し、この変数にAPI_KEYとAPI_TOKENの値を入れて、同じクラス内で使いまわしたいと考えています。
|
6
|
-
config('app.env')で取得できると思ったのですが、stagingになってしまいます。
|
6
|
+
config('app.env')で取得できると思ったのですが、stagingになってしまいます。config('app.env')は.env内の値を取得するのではないでしょうか?
|
7
7
|
試しに$_SERVERを使ってみると目的の値は取得できましたが、安全な方法でしょうか?
|
8
|
+
また、.env内のAPP_ENV=stagingの値を削除してみたところ、productionが取得されました。
|
8
9
|
|
9
10
|
□TestServiceクラス
|
10
11
|
```
|
@@ -51,7 +52,7 @@
|
|
51
52
|
```
|
52
53
|
return [
|
53
54
|
|
54
|
-
'
|
55
|
+
'env' => env('APP_ENV', 'production'),
|
55
56
|
|
56
57
|
他、省略....
|
57
58
|
・
|