问题标签 [include-path]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
933 浏览

php - 在 PHP 中设置包含路径间歇性失败

我已经尝试了两个:

并且 :

在 .htaccess 文件中。

这两种方法实际上都有效,但只是间歇性的。也就是说,它们可以正常处理大约 37 个页面请求,然后失败大约 42 个页面请求,从而导致 require() 调用导致致命错误,从而有效地使站点崩溃。

我什至不知道从哪里开始试图找出发生了什么!


@cnote _

看起来您在包含路径中复制了当前目录。尝试从字符串中删除“.:”之一。

in script 版本最初是

因此 .:.: 来自现有路径:

无论如何,我尝试将其删除,但问题仍然存在。

0 投票
2 回答
34265 浏览

php - 如何在 .htaccess 中将路径附加到 PHP 的 include_path

目前在我的网站上,我正在使用以下语句:

取决于我有多少嵌套文件夹。我确信有更好的方法来做到这一点。

我确信.htaccess是解决方案,但我不确定如何实施它。如果我插入:

...我失去了其余的路径(/usr/lib/php等)。我天真地尝试过:

但这当然没有用。我如何在此列表中添加或附加单个路径.htaccess

0 投票
3 回答
3844 浏览

relative-path - 如何让 MIDL 在其他包含目录中搜索合格路径

更新:在向微软发起支持电话后仅仅六个月,它就被拒绝了,他们声称这不是一个错误(因为文档没有明确说明所看到的行为不是正确的)。他们拒绝了DCR,因为他们在过去 10 年没有听到任何投诉,这显然不是一个常见的用例。

这是号召性用语,如果您遇到同样的问题,请与 Microsoft 联系支持电话,以便他们了解应该修复它。我知道至少有人遇到了同样的问题,因为我在Chrome 的源代码中找到了这条评论:

#构建 .idl 文件。
#这是一团糟。MIDL 需要从 $OPEN_DIR 运行,因为
#将其包含路径应​​用于“ui/ie/bla.idl”之类的相对路径太愚蠢了
#(它只在当前目录中查找)。所以我们必须跳过箍来修复
#我们的相对包含路径和输出文件。


原始问题:

我有以下文件结构:

  • C:\first\Foo.idl
  • C:\second\Bar.idl

其中Bar.idl包含以下行:

编译时如何让midl编译?Bar.idlC:\second

如果我Foo.idl直接导​​入(不指定first/),那么指定first为额外的包含目录就足够了(midl /I c:\first Bar.idl),它会找到Foo.idl

或者,如果我从C:\( midl second\Bar.idl) 编译,那也可以。

问题是,C:\second使用命令行从内部编译时midl /I C:\ Bar.idl,出现以下编译错误:

c1:致命错误 C1083:无法打开源文件:'first\Foo.idl':没有这样的文件或目录

看起来midl只有在相对于当前目录而不是指定的附加包含目录之一时才愿意搜索相对路径,并且仅将附加包含目录用于非限定文件名,此行为特定于import关键字,当使用include结果符合预期。

我希望能够添加两个不同的附加包含目录,这样如果我的本地计算机上有文件,midl将采用该版本,否则它将从服务器获取文件(因此chdir不能选择根文件夹)。

有没有办法解决这个问题?

0 投票
2 回答
2792 浏览

php - PHP 包含路径 - 如果文件以“./”前缀引用,则包含失败

当包含的文件本身包含另一个文件但使用点前缀引用它时,我遇到了包含问题。例如有三个文件 - inc1.phpinc2.phpsubdir/test.php,其内容是 -

子目录/test.php:

inc1.php:

inc2.php

此处显示的包含树失败,并显示无法打开流:没有此类文件或目录错误。如果 inc1.php 包含一个简单的require("inc2.php"); 它就可以工作。, 没有“./”前缀。我添加了“../.” 到包含路径以尝试使其工作,但这没有效果。

除了使用“./”前缀执行包含之外,这里的解决方案是什么,假设inc1.php和inc2.php不可写并且您只能更改subdir/test.php?你怎么还能在 test.php 中包含 inc1.php?

作为参考,我使用的是 PHP 5.2.9。

0 投票
1 回答
4116 浏览

visual-studio-2008 - 带有 C++ 和头文件的 Visual Studio 2008 奇怪之处

我在 Visual Studio 2008 解决方案文件中有一个大型 C++ 项目,一切都在正确编译和构建。到目前为止,一切都很好。

但是,当我尝试直接从 IDE 的代码查看器窗口打开它们时,它无法找到任何头文件,即使这些头文件的文件夹位置已在“属性”页面的“其他包含路径”部分中列出。

例如,这个 C++ 代码片段构建成功:

但是,当我右键单击任何一个头文件的名称并选择上下文菜单选项“打开文档”时,会弹出此错误对话框:

上述文件 ctrl_word.h 确实不存在于上述任何文件夹中,但是构建系统通过查找其他包含目录可以轻松找到它。

我对此感到担忧的主要原因是,我配置为在 IDE 中运行的 Lint 工具显示了类似的“无法打开文件 X”行为。

关于可能是什么问题的任何想法?

0 投票
4 回答
10420 浏览

php - 设置众多包含路径?

我知道如何设置包含路径:

但是如何设置多个包含路径?例如:在两个不同的目录中。

0 投票
8 回答
12988 浏览

php - php相对路径和绝对路径

我已经读过,当包含一个使用绝对路径的 php 文件时,处理时间比相对路径快。

你会建议使用什么?

或者

甚至

还是我真的不应该担心的事情?

0 投票
2 回答
8041 浏览

php - 在 include_path 中添加我的自定义 PHP 库

我想将我的 PHP 库文件添加到 include_path 中,这样我就可以从该服务器上运行的应用程序的任何位置访问它。我尝试按照 php.ini 中 include_path 的语法添加它,但它不起作用。我试过 get_ini("include_path"); 并完美地获得了价值。但我的功能并未包含在我的应用程序中。

0 投票
3 回答
1989 浏览

zend-framework - 新 Zend_Loader_Autoloader 找不到文件

我刚刚从 ZF 1.7 升级到 ZF 1.9,几乎一切正常……除了 Autoloader。

老的:

新的:

我需要自动加载的文件大多没有命名空间(因为它是一个来自预命名空间的大型项目)。它们位于以下目录中:

  • /应用程序/控制器
  • /常见/模型
  • /图书馆
  • /小贩

该站点似乎运行良好,除了它找不到 /library/Form.php
它曾经能够,但现在不行了。如果我添加一个 require_once 'library/Form.php',它会起作用,但这不是必需的,而且我担心如果我在某些地方开始这样做,我需要放弃自动加载器和硬编码所有包括。我认为添加“setFallbackAutoloader(true)”,并在我的包含路径中添加“库”可以解决它,但它没有。

我的包含路径是:
.:/Users/lofye/Documents/htdocs/mysitename/vendor
:/Users/lofye/Documents/htdocs/mysitename/common
:/Users/lofye/Documents/htdocs/mysitename/common/models
:/Users /lofye/Documents/htdocs/mysitename/library
:/Users/lofye/Documents/htdocs/mysitename

非常感谢任何帮助!

0 投票
2 回答
13759 浏览

php - 致命错误:找不到类“Zend_Controller_Action”

我找到了一些与这个问题密切相关的答案,但我仍然无法解决它。我相信人们会说我的包含路径不正确,但我已经尝试了所有我能找到的解决方案,但无济于事。

这是错误:

这是包含语句:

几个小时以来,我一直在用键盘敲击论坛。我是zend和php的新手。这东西让我很头疼。我已将控制器明确添加到路径中。我不知道我在忽略什么。

顺便说一句,出于隐私原因,网站是经过编辑的名称。

我永远感激一个决议。

mjs-编辑:

我注意到我的包含有点不稳定。所以这里是一个重做:

var_dump 的输出:

我注意到 Zend/Controller/Action 存在于 ../library 下。所以,我不明白为什么应用程序找不到它。

如果我从 PHPDebug 运行 IndexController,它会返回