我在Windows 7中使用wampserver(local)。 我收到此警告信息:
Warning: include(): Failed opening 'DateUtility' for inclusion
(include_path='.;C:\php\pear') in C:\wamp\www\dwwithphp\_includes\footer.php on line 1.
在Φhephpinfo中,我验证了以下内容:
Configuration File (php.ini) Path C:\Windows
Loaded Configuration File C:\wamp\bin\apache\apache2.4.9\bin\php.ini
and the include_path line is located in C:\wamp\bin\php5.5.12\phpini
仍然......在c:\wamp\bin\php5.5.12
文件夹中我有3个phpini
个文件,
phpini,phpini-development和phpini_production。
所有这些都在路径和目录中具有相同的信息。
我迷失了想要如何构建include_path,path1和path2是什么。在
include_path = ".;c:\php\includes"
以下是一些更多信息: 有问题的文件是DateUtility.php
<?php
class DateUtility {
public function getcurrenttime() {
date_default_timezone_set("America/New_York");
echo "The current time is: " ;
echo date("g:i a");
}
}
?>
我试图将它包含在footer.php文件的第一行。
<?php include("DateUtility"); ?>
这两个文件都在_includes文件夹中
_includes
header.php
footer.php
DateUtility.php
正如你可以从Lynda的在线课程中看到的那样。
感谢帮助完成include_path 多夫
;;;;;;;;;;;;;;;;;;;;;;;;;
; Paths and Directories ;
;;;;;;;;;;;;;;;;;;;;;;;;;
; UNIX: "/path1:/path2"
;include_path = ".:/php/includes"
;
; Windows: "\path1;\path2"
;include_path = ".;c:\php\includes"
;
; PHP's default setting for include_path is ".;/path/to/php/pear"
; http://php.net/include-path
答案 0 :(得分:1)
如果您提供要尝试包含的文件的路径,则不必乱用您的php配置文件(.ini)。
首先需要包含该文件,然后在DateUtility类中运行该方法。
改变这个:
<?php include("DateUtility"); ?>
到此:
<?php
// first include the file so the code is available using the full file name.
// because the files are in the same directory you shouldn't need a path
include("DateUtility.php");
// run the method inside the DateUtility class
DateUtility::getcurrenttime();
?>
要回答关于配置的问题,path1和path2仅是示例。因为这些行以“;”开头它们被注释掉了,根本不会影响您的配置。评论显示,如果这是一个unix系统,你添加用“:”分隔的路径,如果是windows系统使用“;”
; Windows: "\path1;\path2"
;include_path = ".;c:\php\includes"
被注释掉了。如果你想添加一条新路径,你可以改为:
; Windows: "\path1;\path2"
include_path = ".;c:\path\to\your\folder"
但正如我所说,如果你在include()函数中提供正确的路径,则不需要这样做。