在php中使用include_once时出错

时间:2011-11-08 00:36:50

标签: php

我有一个文件头,我已经为我需要的所有路径创建了变量,如下所示:

$GLOBAL_stylePath = "http://localhost/pspace/css/"; 

(如果我不应该在上面使用http,那怎么会?C:// htdocs / xampp / pspace / css / ???)

include_once "/classes/authorizationUtils.php";
$authorizationUtils = new AuthorizationUtils();

无论如何,包括搞乱一切并给我错误,如:

Warning: include_once() [function.include-once]: http:// wrapper is disabled in the server configuration by allow_url_include=0 in C:\xampp\htdocs\pspace\includes\header.php on line 12

如何在我的php.in中启用此配置。我有一个变量allow_url_include = off,当我“on”它时,没有变化发生。还有这个:

Warning: include_once() [function.include]: Failed opening 'http://localhost/pspace/classes/authorizationUtils.php' for inclusion (include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\pspace\includes\header.php on line 12

2 个答案:

答案 0 :(得分:0)

  1. 确保编辑正确的php.ini文件。通常有两个与您的安装相关联的php.ini文件。一个用于命令行界面php,另一个用于服务器端php。确保对两者进行更改。

  2. 确保在完成这些更改后重新启动网络服务器。

答案 1 :(得分:0)

此警告:

Warning: include_once() [function.include]: Failed opening 'http://localhost/pspace/classes/authorizationUtils.php' for inclusion (include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\pspace\includes\header.php on line 12

这意味着您尝试包含include_path中找不到的文件。所以,您需要的是定义include_path

如果您的目录列表是这样的:

  1. c:\ xampp \ htdocs \ pspace \ // as your root
  2. c:\ xampp \ htdocs \ pspace \ includes \
  3. c:\ xampp \ htdocs \ pspace \ classes \
  4. 试试这个:

    <?php  
        $path1 = '.\includes\';  
        $path2 = '.\classes\';
        set_include_path(get_include_path() . PATH_SEPARATOR . $path1 . PATH_SEPARATOR . $path2);
    ?>  
    

    您也可以将相对路径$path1 = '.\includes\';更改为绝对路径$path1 = 'c:\xampp\htdocs\pspace\includes\';

    阅读本文以了解有关set_include_pathinclude function的更多内容,这些内容始终包含基于文件路径的文件。希望这可以提供帮助。