我是 PHP 中的新手,我在尝试将所需文件定义到 .php 文件时遇到以下问题,我这样做了:
require("../../common/define.php");
因为 define.php 进入与该文件相关的 common / 两个级别,我正在尝试使用 require 指令。
但是这种语法似乎是错误的,因为它给了我这个错误信息:
警告:require(../../ common / define.php):无法打开流:C:\ xampp \ htdocs \ PandaOk \ templates \ default \ common \ remove-booking_pc中没有此类文件或目录。 php在第3行
为什么呢?怎么了?如何在树中插入某个级别的必需文件?
答案 0 :(得分:3)
PHP当前文件:
C:\ XAMPP \ htdocs中\ PandaOk \模板\默认\共同\除去-booking_pc.php
然后,在此文件中,您有../../common/define.php
返回两个步骤[文件夹],然后进入common
文件夹;
这是后退两步:
C:\ XAMPP \ htdocs中\ PandaOk \模板\
进入common
文件夹:
C:\ XAMPP \ htdocs中\ PandaOk \模板\共同\
所以你给出的是一个不存在的目录,这正是错误告诉你的。
相反,只退一步:
require("../common/define.php");
另外,更好的做法是使用$_SERVER['DOCUMENT_ROOT']
执行绝对文件路径,例如 :
require $_SERVER['DOCUMENT_ROOT']."/templates/default/common/remove-booking_pc.php";
这意味着无论项目指向树在何处被调用,reqire总是会成功。
(我不知道你的document_root
将被定义为哪个目录,但我希望你能得到这个想法
您还可以提供完整的静态文件路径,例如as commented by Sahil Gulati。
require "C:\xampp\htdocs\PandaOk\templates\default\common\define.php";
P.S :Require
和include
不需要括号。