Macos OSX上的PhpStorm和内部#x27/私人';目录

Macos OSX上的PhpStorm和内部#x27/私人';目录,macos,phpstorm,Macos,Phpstorm,我在OSX上使用PhpStorm(两者的最新版本,但这并不重要)。由于我无法控制的情况,该项目位于/var/projects/-本质上,OSX转换为/private/var/projects/。我的autoloader使用\uuuuu DIR\uuuu构造来确定类的基本位置,这将解析为/private/var/projects/myproject/specific/path/autoloader.php。因此,类被加载了路径/private/var/projects/myproject/path

我在OSX上使用PhpStorm(两者的最新版本,但这并不重要)。由于我无法控制的情况,该项目位于
/var/projects/
-本质上,OSX转换为
/private/var/projects/
。我的autoloader使用
\uuuuu DIR\uuuu
构造来确定类的基本位置,这将解析为
/private/var/projects/myproject/specific/path/autoloader.php
。因此,类被加载了路径
/private/var/projects/myproject/path/to/file/class.php

因此,我无法在CLI模式下调试它们,因为加载的文件与项目中的文件不同(即项目中的文件路径中没有
/private
),并且PhpStorm忽略断点

对于CLI应用程序,是否有任何方法可以告诉PhpStorm将
/private/var/projects
映射到
/var/projects


如果没有,除了从
/private/var/projects/myproject
实际打开项目之外,我还能做些什么?

不幸的是,似乎没有任何解决方案允许将文件保留在原来的位置。我创建了另一个根目录
/opt
,并将项目移动到那里。现在我的结构是
/opt/projects/myproject
,一切都按预期工作。

不幸的是,似乎没有解决方案允许将文件保留在原来的位置。我创建了另一个根目录
/opt
,并将项目移动到那里。现在,我的结构是
/opt/projects/myproject
,一切正常。

只有一个建议(如果无法更改项目路径)——与远程调试相同——尝试使用路径映射。或者--尝试使用“real”
/private/var/projects/myproject
路径打开此项目。路径映射适用于服务器-我没有服务器,因为我正在尝试调试CLI应用程序。我很感激从/private/var/projects/myproject打开项目可能会解决这个问题,但我想知道是否还有其他方法。将其视为远程CLI调试—在那里,您可以使用映射,因为您将提供服务器名称(请参阅)。如果您从IDE(通过调试按钮)启动调试会话,我不确定这是否有效。。因此,从PHP端启动它(例如,
xdebug_debug()
或通过PHP.ini中的xdebug配置),并在IDE端使用“电话手柄”图标。在
/
中,我有一个符号链接,链接
var
private/var
。此外,正如@LazyOne所建议的,不要对客户机、服务器、远程和所有传达一般含义的类似术语这么直截了当。Xdebug可以“远程输入”到PhpStorm,即使它们位于同一个框中。我在这里遇到的唯一问题是服务器端口(php fpm附带9000作为默认端口)和“远程客户端”端口(Xdebug也需要9000)之间的冲突。我只是为php fpm使用了一个不同的端口,瞧。客户端和服务器位于同一个框中。只有一个建议(如果无法更改项目路径)——与远程调试相同——请尝试使用路径映射。或者--尝试使用“real”
/private/var/projects/myproject
路径打开此项目。路径映射适用于服务器-我没有服务器,因为我正在尝试调试CLI应用程序。我很感激从/private/var/projects/myproject打开项目可能会解决这个问题,但我想知道是否还有其他方法。将其视为远程CLI调试—在那里,您可以使用映射,因为您将提供服务器名称(请参阅)。如果您从IDE(通过调试按钮)启动调试会话,我不确定这是否有效。。因此,从PHP端启动它(例如,
xdebug_debug()
或通过PHP.ini中的xdebug配置),并在IDE端使用“电话手柄”图标。在
/
中,我有一个符号链接,链接
var
private/var
。此外,正如@LazyOne所建议的,不要对客户机、服务器、远程和所有传达一般含义的类似术语这么直截了当。Xdebug可以“远程输入”到PhpStorm,即使它们位于同一个框中。我在这里遇到的唯一问题是服务器端口(php fpm附带9000作为默认端口)和“远程客户端”端口(Xdebug也需要9000)之间的冲突。我只是为php fpm使用了一个不同的端口,瞧。客户端和服务器在同一个框中。