Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitea7c631

Browse files
committed
Merge branch '6.4' into 7.3
* 6.4: [DependencyInjection] Update the examples about extracting URL values
2 parentse528343 +a8ecd69 commitea7c631

File tree

1 file changed

+70
-62
lines changed

1 file changed

+70
-62
lines changed

‎configuration/env_var_processors.rst‎

Lines changed: 70 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -629,63 +629,62 @@ Symfony provides the following env var processors:
629629
..code-block::bash
630630
631631
# .env
632-
MONGODB_URL="mongodb://db_user:db_password@127.0.0.1:27017/db_name"
632+
DATABASE_URL="postgresql://db_user:db_password@127.0.0.1:5432/db_name"
633633
634634
..configuration-block::
635635

636636
..code-block::yaml
637637
638-
# config/packages/mongodb.yaml
639-
mongo_db_bundle:
640-
clients:
641-
default:
642-
hosts:
643-
-{ host: '%env(string:key:host:url:MONGODB_URL)%', port: '%env(int:key:port:url:MONGODB_URL)%' }
644-
username:'%env(string:key:user:url:MONGODB_URL)%'
645-
password:'%env(string:key:pass:url:MONGODB_URL)%'
646-
connections:
647-
default:
648-
database_name:'%env(key:path:url:MONGODB_URL)%'
638+
# config/services.yaml
639+
services:
640+
# ...
641+
642+
some_service:
643+
arguments:
644+
$host:'%env(string:key:host:url:DATABASE_URL)%'
645+
$port:'%env(int:key:port:url:DATABASE_URL)%'
646+
$username:'%env(string:key:user:url:DATABASE_URL)%'
647+
$password:'%env(string:key:pass:url:DATABASE_URL)%'
648+
$database_name:'%env(key:path:url:DATABASE_URL)%'
649649
650650
..code-block::xml
651651
652-
<!-- config/packages/mongodb.xml-->
652+
<!-- config/services.xml-->
653653
<?xml version="1.0" encoding="UTF-8" ?>
654654
<containerxmlns="http://symfony.com/schema/dic/services"
655655
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
656656
xsi:schemaLocation="http://symfony.com/schema/dic/services
657-
https://symfony.com/schema/dic/services/services-1.0.xsd">
658-
659-
<mongodb:config>
660-
<mongodb:clientname="default"username="%env(string:key:user:url:MONGODB_URL)%"password="%env(string:key:pass:url:MONGODB_URL)%">
661-
<mongodb:hosthost="%env(string:key:host:url:MONGODB_URL)%"port="%env(int:key:port:url:MONGODB_URL)%"/>
662-
</mongodb:client>
663-
<mongodb:connectionsname="default"database_name="%env(key:path:url:MONGODB_URL)%"/>
664-
</mongodb:config>
657+
https://symfony.com/schema/dic/services/services-1.0.xsd"
658+
>
659+
<services>
660+
<!-- ...-->
661+
662+
<serviceid="some_service">
663+
<argumentkey="$host">%env(string:key:host:url:DATABASE_URL)%</argument>
664+
<argumentkey="$port">%env(int:key:port:url:DATABASE_URL)%</argument>
665+
<argumentkey="$username">%env(string:key:user:url:DATABASE_URL)%</argument>
666+
<argumentkey="$password">%env(string:key:pass:url:DATABASE_URL)%</argument>
667+
<argumentkey="$database_name">%env(key:path:url:DATABASE_URL)%</argument>
668+
</service>
669+
</services>
665670
</container>
666671
667672
..code-block::php
668673
669-
// config/packages/mongodb.php
670-
$container->loadFromExtension('mongodb', [
671-
'clients' => [
672-
'default' => [
673-
'hosts' => [
674-
[
675-
'host' => '%env(string:key:host:url:MONGODB_URL)%',
676-
'port' => '%env(int:key:port:url:MONGODB_URL)%',
677-
],
678-
],
679-
'username' => '%env(string:key:user:url:MONGODB_URL)%',
680-
'password' => '%env(string:key:pass:url:MONGODB_URL)%',
681-
],
682-
],
683-
'connections' => [
684-
'default' => [
685-
'database_name' => '%env(key:path:url:MONGODB_URL)%',
686-
],
687-
],
688-
]);
674+
// config/services.php
675+
namespace Symfony\Component\DependencyInjection\Loader\Configurator;
676+
677+
return function(ContainerConfigurator $container): void {
678+
// ...
679+
680+
$services->set(SomeService::class)
681+
->arg('$host', '%env(string:key:host:url:DATABASE_URL)%')
682+
->arg('$port', '%env(int:key:port:url:DATABASE_URL)%')
683+
->arg('$username', '%env(string:key:user:url:DATABASE_URL)%')
684+
->arg('$password', '%env(string:key:pass:url:DATABASE_URL)%')
685+
->arg('$database_name', '%env(key:path:url:DATABASE_URL)%')
686+
;
687+
};
689688

690689
..warning::
691690

@@ -699,44 +698,53 @@ Symfony provides the following env var processors:
699698
..code-block::bash
700699
701700
# .env
702-
MONGODB_URL="mongodb://db_user:db_password@127.0.0.1:27017/db_name?timeout=3000"
701+
DATABASE_URL="postgresql://db_user:db_password@127.0.0.1:5432/db_name?serverVersion=12.19&charset=utf8"
703702
704703
..configuration-block::
705704

706705
..code-block::yaml
707706
708-
# config/packages/mongodb.yaml
709-
mongo_db_bundle:
710-
clients:
711-
default:
712-
# ...
713-
connectTimeoutMS:'%env(int:key:timeout:query_string:MONGODB_URL)%'
707+
# config/services.yaml
708+
services:
709+
# ...
710+
711+
some_service:
712+
arguments:
713+
$serverVersion:'%env(string:key:serverVersion:query_string:DATABASE_URL)%'
714+
$charset:'%env(string:key:charset:query_string:DATABASE_URL)%'
714715
715716
..code-block::xml
716717
717-
<!-- config/packages/mongodb.xml-->
718+
<!-- config/services.xml-->
718719
<?xml version="1.0" encoding="UTF-8" ?>
719720
<containerxmlns="http://symfony.com/schema/dic/services"
720721
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
721722
xsi:schemaLocation="http://symfony.com/schema/dic/services
722-
https://symfony.com/schema/dic/services/services-1.0.xsd">
723+
https://symfony.com/schema/dic/services/services-1.0.xsd"
724+
>
725+
<services>
726+
<!-- ...-->
723727
724-
<mongodb:config>
725-
<mongodb:clientname="default"connectTimeoutMS="%env(int:key:timeout:query_string:MONGODB_URL)%"/>
726-
</mongodb:config>
728+
<serviceid="some_service">
729+
<argumentkey="$serverVersion">%env(string:key:serverVersion:query_string:DATABASE_URL)%</argument>
730+
<argumentkey="$charset">%env(string:key:charset:query_string:DATABASE_URL)%</argument>
731+
</service>
732+
</services>
727733
</container>
728734
729735
..code-block::php
730736
731-
// config/packages/mongodb.php
732-
$container->loadFromExtension('mongodb', [
733-
'clients' => [
734-
'default' => [
735-
// ...
736-
'connectTimeoutMS' => '%env(int:key:timeout:query_string:MONGODB_URL)%',
737-
],
738-
],
739-
]);
737+
// config/services.php
738+
namespace Symfony\Component\DependencyInjection\Loader\Configurator;
739+
740+
return function(ContainerConfigurator $container): void {
741+
// ...
742+
743+
$services->set(SomeService::class)
744+
->arg('$serverVersion', '%env(string:key:serverVersion:query_string:DATABASE_URL)%')
745+
->arg('$charset', '%env(int:string:charset:query_string:DATABASE_URL)%')
746+
;
747+
};
740748

741749
``env(enum:FooEnum:BAR)``
742750
Tries to convert an environment variable to an actual ``\BackedEnum`` value.

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp