0

我目前遇到的问题

解析错误:语法错误,第 13 行 /home1/defcon2/public_html/usercp/index.php 中的意外 T_INCLUDE

这是到目前为止的代码:

<?php
/* [snip] */
require_once(__DIR__ . "/recources/utils.class.php")
include(__DIR__ . "/resources/pagehead.php"); // line 13

该文件位于正确的位置,我使用的是 PHPMyAdmin 3.5.5

4

2 回答 2

2

好的,所以如果这是您提供的代码,那么问题很简单:

require_once(__DIR__."/recources/utils.class.php") //<-- no semi colon
include(__DIR__."/resources/pagehead.php");

您错过了 require_once 行末尾的分号。

PHP 错误报告是准确的。PHP 不会说谎,即使代码中的实际问题不是错误和/或 PHP 在错误中声明的行。

PHP 错误中的“意外”任何内容通常都是直截了当的,因为它在错误中提到的任何内容之前就已经预料到了某些内容。在这种情况下,您上面的行意外的“意外的 T_INCLUDE”缺少分号。

添加到整个场景中,并且您只需要包含来自特定位置的文件,这是__DIR__您需要的吗?这将返回文件的目录,如果__DIR__在包含文件中使用,则返回包含文件的目录。
如果您的 PHP 版本太旧且无法更新,则必须明确列出完整路径。

或者,如果你有一个引导类型文件(包含在所有脚本中),你可以在那里定义一些东西,如果它值得并且经常使用的话。

于 2013-09-22T00:28:14.240 回答
2

Failed opening required '__DIR__/recources/utils.class.php是由于使用了早于 5.3.0 的 php,__DIR__ 首先介绍了.

您可以通过替换来“修复”它__DIR__dirname(__FILE__)但代码可能不仅仅与古老的 php 版本兼容。

于 2013-09-22T00:32:43.503 回答