php项目使用xdebug进行调试,配置了launch.json,configurations的env配置项中设置了环境变量,用于在不同的模式下,链接不同的数据库,但是这个配置并没有生效,请问这个应该怎么配置?
launch.json:
{
"version": "0.2.0",
"configurations": [
{
"name": "server and debug (aliyun)",
"type": "php",
"request": "launch",
"runtimeArgs": [
"-S",
"localhost:8000",
"-t",
"."
],
"port": 9003,
"cwd": "${workspaceFolder}/public",
// "preLaunchTask": "set-env-aliyun",
"serverReadyAction": {
"action": "openExternally"
},
"env": {
"HOSTNAME": "xxx.xx.xx.19",
}
},
{
"name": "server and debug (huaweiyun)",
"type": "php",
"request": "launch",
"runtimeArgs": [
"-S",
"localhost:8000",
"-t",
"."
],
"port": 9003,
"cwd": "${workspaceFolder}/public",
// "preLaunchTask": "set-env-huaweiyun",
"serverReadyAction": {
"action": "openExternally"
},
"env": {
"HOSTNAME": "xxx.xx.xx.84"
}
},
{
"name": "server and debug (loc)",
"type": "php",
"request": "launch",
"runtimeArgs": [
"-S",
"localhost:8000",
"-t",
"."
],
"port": 9003,
"cwd": "${workspaceFolder}/public",
// "preLaunchTask": "set-env-loc",
"serverReadyAction": {
"action": "openExternally"
},
"env": {
"HOSTNAME": "127.0.0.1"
}
}
]
}
不知道怎么弄,并没有太多的尝试。
在你的launch.json
配置中,你已经正确地为不同的调试配置设置了不同的环境变量HOSTNAME
,这些配置应该能够在使用VS Code进行PHP调试时生效。但是,如果这些环境变量没有在你的应用程序中按预期工作,可能是因为几个原因:
getenv('HOSTNAME')
来读取环境变量。请检查你的代码,确保你是以这种方式读取HOSTNAME
的。数据库连接字符串:在你的PHP代码中,确保数据库连接字符串是根据HOSTNAME
环境变量动态构建的。例如:
$hostname = getenv('HOSTNAME') ?? 'default_hostname';
$dsn = "mysql:host=$hostname;dbname=your_database;charset=utf8mb4";
$options = [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::ATTR_EMULATE_PREPARES => false,
];
try {
$pdo = new PDO($dsn, 'username', 'password', $options);
} catch (\PDOException $e) {
throw new \PDOException($e->getMessage(), (int)$e->getCode());
}
.env
文件或Apache/Nginx配置)覆盖了HOSTNAME
环境变量。HOSTNAME
环境变量的值是否如你所期望的那样被读取。如果以上步骤都不能解决问题,建议检查VS Code的官方文档或社区论坛,看看是否有其他用户遇到了类似的问题,并找到了解决方案。
问题内容: 在node.js项目上使用新的VSCode编辑器。我正在尝试通过编辑launch.json文件来配置“启动”配置文件以进行调试。我需要将连接字符串设置为环境变量。根据launch.json文件中的注释: 我试过像这样添加我的环境变量: 当我尝试启动我的应用程序时,这会导致错误;“ OpenDebug进程意外终止”。我尚未找到任何可以解释问题所在的日志文件等。 我知道当我设置环境变量并从
我试图用VScode设置Xdebug,但是每当我设置断点时,它就会忽略它。 PHP-V 感谢您的阅读!
问题内容: 我有一个Linux环境,并且有一个PHP Web应用程序,该程序有条件地基于PHP中使用的环境变量运行。我需要知道如何为应用程序正确设置这些环境变量。我不确定如何在Apache上进行设置。 另外,我需要能够为每个域分别配置单独的环境变量。 请提供有关如何实现此目标的建议。 问题答案: 大致情况:
我有sbt多项目,并尝试在子项目的中设置如下: 测试将中止,并显示以下消息: 在测试文件中,我试图得到如下值: Intellj提供如下设置环境变量: 如何设置一个环境变量在为也? 更新 根如下所示: 我还是有例外。
本文向大家介绍Tomcat环境变量如何配置,包括了Tomcat环境变量如何配置的使用技巧和注意事项,需要的朋友参考一下 本文以文字的形式为大家叙述Tomcat环境变量的配置过程,以及验证配置是否成功的方法,具体内容如下 JDK环境变量配置: 如果你的JDK安装在C盘里,如:C:\Program Files\Java\jdk1.6.0_05,那么就在系统变量里(当然也可以在用户变量里)点新建:
问题内容: 如何管理不同环境的配置变量/常量? 这可能是一个示例: 我的其余API可以访问,但是在Git版本控制下使用相同代码工作的朋友在Tomcat上部署了该API 。 假设我们有这样的东西: 如何根据环境动态注入API端点的正确值? 在PHP中,我通常使用文件来执行此类操作,将基本配置文件(config.xml)与用户名称识别的本地环境配置文件合并。但是我不知道如何在JavaScript中