从.env读取laravel 5.1的嵌套variables(和docker)
Laravel 5.1用奇怪的方法评估嵌套variables。 vlucas / phpdotenv的规范如下: CACHE_DIR="${BASE_DIR}/cache"
但是, DB_HOST="${MYSQLDB_PORT_3306_TCP_ADDR}"
将会通过http返回"${MYSQLDB_PORT_3306_TCP_ADDR}"
,这显然不能连接到。
通过phpunit TESTING_DB_HOST="{$MYSQLDB_PORT_3306_TCP_ADDR}"
将正确返回172.17.0.2。 注意$
的位置是不正确的。 将$
放在正确的位置将返回"${MYSQLDB_PORT_3306_TCP_ADDR}"
。
更改$
请求的$
位置并不重要,我没有收到评估值。
我正在使用docker,我不知道是否有任何事情要做这个问题。 我正在使用本指南: Laravel / docker
任何想法是怎么回事,以及如何从一个.env嵌套variables获取http的mysql ip?