代码之家  ›  专栏  ›  技术社区  ›  Alex Zylman

调用未定义的函数phpinclude_once()

php
  •  4
  • Alex Zylman  · 技术社区  · 15 年前

    我正在创建一个新的PHP页面,我得到了错误信息

    致命错误:在第1行调用/home8/nuventio/public_html/marketing/pb2/dashboard.php中的未定义函数phpinclude_once()。

    我不知道为什么会出现这个错误,我以前的页面都是这样做的,没有问题。这是问题所在:

    <?php
    include_once("../utils.php");
    ?>
    

    然后它就进入普通的HTML代码。没有那条线它就可以工作。

    4 回复  |  直到 15 年前
        1
  •  8
  •   Tyler Carter    15 年前

    尝试确保在您的 <?php 你的 include_once

    看起来你可能有短标签,它解释为:

    <? =打开标签
    phpinclude_once("../utils.php"); =函数调用

    所以在里面多放一条线或者其他什么。你甚至可以添加一些分号来代替它。

        2
  •  6
  •   Peter Bailey    15 年前

    也许您的编辑程序只使用回车式换行符(\r或0x0d)保存PHP文件。

    因为,据我所知*,解析器将只识别换行样式的换行符(\n或0x0a)

    *如果我错了,请有人纠正我。

    编辑

    也可能是一个传输问题-我相信一些ftp程序将做换行和其他操作系统特定的东西。

        3
  •  1
  •   Josh Andreas Rehm    15 年前

    删除整行并重新键入。如果php说未定义的函数是 phpinclude_once 然后事情就变得很奇怪了,好像php没有看到 <?php include_once ,解释为 <? phpinclude_once

        4
  •  1
  •   Alex Zylman    15 年前

    我解决了我的问题(实际上是解决了,不是解决方法)。

    以前的文件是我自己创建的文件。我正在处理的文件给我这个错误是由一个Mac用户给我的。

    在记事本++中,我发现它列出了eol信息,发现它们是使用mac eol格式编码的,虽然在记事本++中看起来很好,但当我将其上载到服务器(一个*nix环境)时,它就不起作用了。在记事本++中,我将EOL转换为Windows格式(或者可以使用Unix格式,但Mac格式不行)。这是在“编辑”->EOL转换下进行的。

    推荐文章