包括不工作(PHP)

时间:2013-11-27 10:47:24

标签: php

我有包含commnad

的奇怪问题

我的文件结构

/index.php
/files/init.php
/files/db.php

以及此档案的来源

的index.php

<? 
include ('files/init.php');
?>

的init.php

<?
include ("db.php");
?>

来自 db.php 的来源未执行..现在如果我将文件 db.php 重命名为 db2.php 并将其重命名为init.php现在它的工作原理 还有一些php缓存还是什么?我不明白。

3 个答案:

答案 0 :(得分:1)

来自PEAR的冲突文件名DB.php。

包含来自PEAR的

DB.php 而不是“db.php”。

因此请使用“db.php”以外的文件名。

使用 DIR 宏编辑或使用包含

答案 1 :(得分:0)

试试这个

<?php
include ("db.php");

?>

或使用./

<?php
include ("./db.php");

?>

答案 2 :(得分:0)

根据入口点(此处为index.php)解析包含的文件 此外,require更好的是文件必须存在。

<强>的index.php

<?php require 'files/init.php'; ?>

<强>文件/的init.php

<?php require 'files/db.php'; ?>

更新1:根据@Darsstar的建议,以下是使用__DIR__的示例:

<强>文件/的init.php

<?php require __DIR__.'/db.php'; ?>

更新2:也许您应该考虑PSR-0PSR-4来处理文件包含。