PHP Netbeans中的未知函数-如何抑制?
由于我是在PHP Netbeans中的未知函数-如何抑制?,php,netbeans,Php,Netbeans,由于我是在localhost上开发的,但部署在其他地方,而且我不想强制我的站点位于Windows分区的根目录下(当前为F:\web\u dev\htdocs),所以代码如下: require_once($_SERVER['DOCUMENT_ROOT'] . '/projXY/database/database_common.php'); OdbcExec($sql); // defined in the file above 导致Netbeans发出“警告:未知函数” 现在,我可以通过使用如下
localhost
上开发的,但部署在其他地方,而且我不想强制我的站点位于Windows分区的根目录下(当前为F:\web\u 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哪个本地目录对应于$\u服务器['DOCUMENT\u ROOT']
,但我找不到相应的配置选项。我相信这是一个普遍的问题。有什么建议吗
更新:NetbBeans v7.0.1不确定这是否是您想要的,但我通常使用:
require_once(dirname(__FILE__) . DIRECTORY_SEPARATOR . 'file.php');
只需将
/path/to/projXY/database/
目录添加到项目的include路径。然后Netbeans将在那里拾取文件并将其用作代码引用
补遗
依靠$\u服务器['DOCUMENT\u ROOT']
通常是个坏主意。首先,它消除了通过控制台/命令行运行部分应用程序的能力
相反,您应该使用共享库的可配置绝对路径,或者按照中的操作,使用
\uuuu DIR\uuuu
(PHP5.3)或dirname(\uuu FILE\uuuuu)的相对路径。您至少应该尝试修复您的输入错误:)您使用的是哪个版本的Netbeans?+1(虽然我愿意打赌我的打字错误是换位-我被他们诅咒了。对不起)我将把这个问题升级到NB版本。谢谢,如果我有一个多级层次结构和一些通用功能(dataebase、错误处理等)可以从任何级别调用它-我如何处理它?例如,我的错误处理需要来自$\u SERVER['DOCUMENT\u ROOT']\CSS\my.cc的CSS frile。这是两个独立的点。您的NetBEans选项解决方案适用于我提出的问题。我现在将问另一个关于如何最好地处理包含路径的问题。谢谢,两者都有