Есть ли способ определить переменную внутри проекта, на которую я могу ссылаться внутри javascript / php, которая автоматически заполняется веб-штормом перед развертыванием (локальным или удаленным)? В качестве примера у меня есть переменная:
var foo = "/hello/world"
Эта переменная используется для определения относительного пути на удаленном сервере (и обрабатывается удаленным веб-сервером). Однако, когда я использую локальный сервер веб-шторма для выполнения локальных тестов, он не может правильно отображаться, и мне пришлось бы вручную изменить его, чтобы указать на:
var foo = "http://localhost:1234/hello/world"
Это повышает вероятность ошибок при развертывании, так как мне пришлось бы дважды проверять каждую такую переменную в своем проекте перед развертыванием. Мой вопрос заключается в том, можно ли заменить эти типы объявлений специальной переменной веб-шторма, которую можно настраивать в зависимости от каждого места развертывания, или я могу установить настраиваемое сопоставление для определенных путей для локального веб-сервера веб-шторма.
Допустим, если у вас есть динамический URL, вы можете сохранить его в переменной JavaScript, например:
var base = "< ? php echo $phpstormurl; ? >";
var relative = '/hello/world';
После этого вы можете объединить их в один, например:
var absolute = base + relative;
Если вы предупредите путь, он покажет вам полный путь.
Наиболее распространенным решением для этого является использование переменные среды.
Это значения, которые вы устанавливаете на своем (локальном) сервере вне вашего кода, и к ним можно получить доступ $_ENV
.
// Reading an env var with defaults
$foo = getenv("FOO") ? getenv("FOO") : 'bar';
Есть также такие инструменты, как phpdotenv это можно использовать для настройки переменных env из файла в вашем проекте.