我在包含包含函数的文件时遇到问题。我有一个名为blog.php的文件,它运行以下内容:
<?php
require 'db.php';
require 'functions.php';
//Connect to the DB
$conn = Blog\DB\connect($config);
if ( !$conn ) die('Problem connecting to the db.');
blog.php文件位于博客文件夹中。博客文件夹内是一个admin文件夹,其中包含一个index.php文件,其中包含以下代码:
<?php
require '../blog.php';
这应该允许我调用blog.php然后调用包含我的数据库连接函数的db.php文件,但是我收到一个错误,即connect函数未定义。它试图要求博客&gt; admin文件夹中的db.php,而不是blog.php文件所在的位置(与db.php目录相同)?我该如何解决这个问题?
答案 0 :(得分:1)
这里有几个选项 - 通过更改您的相对链接以正确到达它们应该位于的文件夹,或者使用chdir()方法将当前工作目录更改为相应的文件夹。您也可以使用绝对路径。
如何更改相关链接取决于您从...中访问文件的目录结构中的位置
假设你的博客文件是这样的:
http://www.site.com/blog/blog.php
您的Admin文件夹位于博客文件夹中;
我会包含这样的文件:
include "admin/db.php";
include "admin/functions.php";
再次 - 假设这两个文件都位于博客文件夹内的admin文件夹中;
即。根/博客/管理/ db.php中
这就是我解释你所说的......