@@ -23,8 +23,8 @@ To use it, first register a new handler service:
23
23
24
24
Symfony\Component\HttpFoundation\Session\Storage\Handler\PdoSessionHandler :
25
25
arguments :
26
- - ' mysql:dbname=mydatabase '
27
- - { db_username: myuser , db_password: mypassword }
26
+ - ' mysql:dbname=%env(MYDATABASE_NAME)%, host=%env(MYDATABASE_HOST)% '
27
+ - { db_username: '%env(MYDATABASE_USERNAME)%' , db_password: '%env(MYDATABASE_PASSWORD)%' }
28
28
29
29
# If you're using Doctrine & want to re-use that connection, then:
30
30
# comment-out the above 2 lines and uncomment the line below
@@ -43,10 +43,10 @@ To use it, first register a new handler service:
43
43
44
44
<services >
45
45
<service id =" Symfony\Component\HttpFoundation\Session\Storage\Handler\PdoSessionHandler" public =" false" >
46
- <argument >mysql:dbname=mydatabase </argument >
46
+ <argument >mysql:dbname=%env(MYDATABASE_NAME)%, host=%env(MYDATABASE_HOST)% </argument >
47
47
<argument type =" collection" >
48
- <argument key =" db_username" >myuser </argument >
49
- <argument key =" db_password" >mypassword </argument >
48
+ <argument key =" db_username" >%env(MYDATABASE_USERNAME)% </argument >
49
+ <argument key =" db_password" >%env(MYDATABASE_PASSWORD)% </argument >
50
50
</argument >
51
51
</service >
52
52
</services >
@@ -59,11 +59,19 @@ To use it, first register a new handler service:
59
59
60
60
$storageDefinition = $container->autowire(PdoSessionHandler::class)
61
61
->setArguments(array(
62
- 'mysql:dbname=mydatabase ',
63
- array('db_username' => 'myuser ', 'db_password' => 'mypassword ')
62
+ 'mysql:dbname=%env(MYDATABASE_NAME)%, host=%env(MYDATABASE_HOST)% ',
63
+ array('db_username' => '%env(MYDATABASE_USERNAME)% ', 'db_password' => '%env(MYDATABASE_PASSWORD) ')
64
64
))
65
65
;
66
66
67
+ .. note ::
68
+
69
+ Ideally you want to reuse your database information from your environment variables.
70
+ These variables can be referenced in the service configuration using ``%env(PARAMETER_NAME)% ``.
71
+ Do not forget to wrap these with single or double quotes in yaml.
72
+
73
+ See :doc: `/configuration/external_parameters `.
74
+
67
75
Next, tell Symfony to use your service as the session handler:
68
76
69
77
.. configuration-block ::
@@ -115,8 +123,8 @@ a second array argument to ``PdoSessionHandler``:
115
123
116
124
Symfony\Component\HttpFoundation\Session\Storage\Handler\PdoSessionHandler :
117
125
arguments :
118
- - ' mysql:dbname=mydatabase '
119
- - { db_table: sessions , db_username: myuser , db_password: mypassword }
126
+ - ' mysql:dbname=%env(MYDATABASE_NAME)%, host=%env(MYDATABASE_HOST)% '
127
+ - { db_table: '%env(SESSIONS_TABLE)% , db_username: '%env(MYDATABASE_USERNAME)%' , db_password: '%env(MYDATABASE_PASSWORD)%' }
120
128
121
129
.. code-block :: xml
122
130
@@ -129,11 +137,11 @@ a second array argument to ``PdoSessionHandler``:
129
137
130
138
<services >
131
139
<service id =" Symfony\Component\HttpFoundation\Session\Storage\Handler\PdoSessionHandler" public =" false" >
132
- <argument >mysql:dbname=mydatabase </argument >
140
+ <argument >mysql:dbname=%env(MYDATABASE_NAME)%, host=%env(MYDATABASE_HOST)% </argument >
133
141
<argument type =" collection" >
134
- <argument key =" db_table " >sessions </argument >
135
- <argument key =" db_username " >myuser </argument >
136
- <argument key =" db_password " >mypassword </argument >
142
+ <argument key =" db_username " >%env(MYDATABASE_USERNAME)% </argument >
143
+ <argument key =" db_password " >%env(MYDATABASE_PASSWORD)% </argument >
144
+ <argument key =" db_table " >%env(SESSIONS_TABLE)% </argument >
137
145
</argument >
138
146
</service >
139
147
</services >
@@ -148,8 +156,11 @@ a second array argument to ``PdoSessionHandler``:
148
156
149
157
$container->autowire(PdoSessionHandler::class)
150
158
->setArguments(array(
151
- 'mysql:dbname=mydatabase',
152
- array('db_table' => 'sessions', 'db_username' => 'myuser', 'db_password' => 'mypassword')
159
+ 'mysql:dbname=%env(MYDATABASE_NAME)%, host=%env(MYDATABASE_HOST)%',
160
+ array(
161
+ 'db_table' => '%env(SESSIONS_TABLE)%',
162
+ 'db_username' => '%env(MYDATABASE_USERNAME)%',
163
+ 'db_password' => '%env(MYDATABASE_PASSWORD)')
153
164
))
154
165
;
155
166
0 commit comments