如何定义单独的本地和远程变量(PHPStorm、Webstorm)

How to define separate local and remote variables (PHPStorm, Webstorm)

本文关键字:程变量 变量 PHPStorm Webstorm 何定义 定义 单独      更新时间:2023-09-26

有没有一种方法可以在项目内部定义一个变量,我可以在部署前(本地或远程)由webstorm自动填充的javascript.php内部引用该变量?例如,我有一个变量:

var foo = "/hello/world"

此变量用于定义远程服务器上的相对路径(由远程Web服务器处理)。然而,当我使用本地webstorm服务器进行一些本地测试时,它无法正确映射,我必须手动将其更改为指向:

var foo = "http://localhost:1234/hello/world"

这使得部署过程中更容易出错,因为在部署之前,我必须仔细检查项目中的每个这样的变量。我的问题是,是否可以将这些类型的声明替换为一个特殊的webstorm变量,该变量可以根据每个部署位置进行自定义,或者我是否可以为webstorm本地webserver的某些路径设置自定义映射。

假设您有动态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-var。