从另一个PHP文件调用未定义的函数

4 php undefined include

好的,这就是我的代码的样子

index.php

require_once($WebsiteRoot . "/include/testfile.php");
TestFunction();
Run Code Online (Sandbox Code Playgroud)

/include/testfile.php

function TestFunction()
{
    echo "It Works";
}
Run Code Online (Sandbox Code Playgroud)

它给了我错误:

Fatal error:
Call to undefined function TestFunction() in /path/index.php on line 49
Run Code Online (Sandbox Code Playgroud)

知道我在做什么错吗?谢谢

Mar*_*c B 5

您没有<?php在包含的文件中包含标签,因此它被解释为纯文本输入。

请记住,没有PHP脚本之类的东西。只有包含PHP代码块的文件。没有至少一个<?php开始标记,PHP解释器将永远不会被调用,并且文件的内容将被简单地视为输出。


Dea*_*ath 0

确保您包含了您认为的文件。如果您的index.php页面看起来与您所说的一模一样,那么它不会返回任何内容。

如果您想从网站上的任何位置链接到同一位置而不用担心相对位置,则在文件的开头放置:

$WebsiteRoot=$_SERVER['DOCUMENT_ROOT'];
Run Code Online (Sandbox Code Playgroud)

如果您的文件位于http://mywebsite.com/include/testfile.php ,它应该可以正常工作

  • 不要使用 URL 来包含本地文件!请改用文件系统路径。如果您使用 URL 获取文件,服务器将解析该文件而不是提供代码。您可能会得到一个空白文件。 (2认同)