我已经为这个问题挣扎了两天多了。我在电脑上的C:''wamp文件夹中安装了一个wamp服务器。我的文档根目录是C:''wamp''www。
我正在尝试使用include语句将两个php文件从一个子文件夹中包含到当前文件夹中的另一个代码文件中。最奇怪的是,它包含一个文件,但不包含另一个。
代码文件如下所示。
C:'wamp'www'jsonrpcclient'add.php
C:'wamp'www'jsonrpcclient'includes'jsonrpc.php
C:'wamp'www'jsonrpcclient'includes'jconfig.php
add.php文件有两个include语句,如下所示:
include( "includes'jsonrpc.php" );
include( "includes'jconfig.php" );
当我在浏览器中执行add.php时,我得到了以下错误。
( ! ) Warning: include(includes'jconfig.php): failed to open stream: No such file or directory in C:'wamp'www'jsonrpcclient'add.php on line 4
Call Stack
# Time Memory Function Location
1 0.0004 138656 {main}( ) ..'add.php:0
( ! ) Warning: include(): Failed opening 'includes'jconfig.php' for inclusion (include_path='.;C:'php'pear') in C:'wamp'www'jsonrpcclient'add.php on line 4
Call Stack
# Time Memory Function Location
1 0.0004 138656 {main}( ) ..'add.php:0
我尝试过其他帖子中提到的几种解决方案,但都不起作用。
STRANGEST问题是两个问题中的一个,包括jsonrpc.php包含的工作,但不是第二个(jconfig.php)!!!为什么?两者都在当前文件夹中add.php
所在的同一子文件夹中。
感谢您的帮助。提前谢谢。
是!,它创建了一个全新的文件,并将jclient.php的内容复制到其中。看起来旧文件有一些损坏。顺便说一句,我只是在include路径中放回了正斜杠(作为调试的一部分,我把它们改成了黑斜杠)。它们仍然相对于发布的当前文件夹保持不变,并且可以正常工作。感谢@Ryan Vincent提醒大家注意文件损坏这个老问题。
您需要使用blow代码
include( "includes/jsonrpc.php" );
include( "includes/jconfig.php" );
或
include(__DIR__.'/includes/jsonrpc.php');
include(__DIR__.'/includes/jconfig.php');
通过替换您的代码
include( "includes'jsonrpc.php" );
include( "includes'jconfig.php" );