PHP Netbeans中的未知功能 - 如何抑制?

时间:2011-08-16 02:13:28

标签: php netbeans

由于我在localhost上开发但在其他地方部署,因为我不想强迫我的网站在Windows分区的根目录下(目前是F:\ web_dev \ htdocs),这样的代码:

require_once($_SERVER['DOCUMENT_ROOT'] . '/projXY/database/database_common.php');
OdbcExec($sql); // defined in the file above

导致Netbeans发出“警告:未知功能”。

现在,我可以通过使用如下目录结构来解决这个问题:

F:\project_1  
F:\project_2  

而不是

F:\web_dev_htdocs\project_1  
F:\web_dev_htdocs\project_2  

然后使用

require_once('/database/database_common.php');

但是 对最终用户安装我网站的位置施加了限制。

到目前为止,最简单的方法是告诉NetBeans哪个本地目录对应$_SERVER['DOCUMENT_ROOT'],但我找不到配置选项。我确信这是一个常见问题。有什么建议吗?


更新:NetbBeans v7.0.1

2 个答案:

答案 0 :(得分:3)

只需将/path/to/projXY/database/目录添加到项目的包含路径中即可。然后,Netbeans将在那里获取文件并将其用作代码参考。

http://netbeans.org/kb/docs/php/project-setup.html#phpIncludePath

附录

依赖$_SERVER['DOCUMENT_ROOT']通常是一个坏主意。首先,它消除了通过控制台/命令行运行部分应用程序的能力。

您应该使用可配置的绝对路径来共享库,或者像Brandon's answer那样使用__DIR__(PHP 5.3)或dirname(__FILE__)

的相对路径

答案 1 :(得分:2)

不确定这是否是您要找的,但我通常使用:

 require_once(dirname(__FILE__) . DIRECTORY_SEPARATOR . 'file.php');