初学PHP的时候,我们经常被PHP的绝对路径和相对路径弄的晕头转向。路径问题经常导致include及require命令不能加载到指定的页
面,从而导致Web程序运行错误。本文将跟大家一起探讨一下PHP路径问题的常用解决方案。
下面我们先做一个个简单的示例:
上图是一个简单Web项目的结构图,其中各文件的代码如下:
root/index.php :
require_once ‘app/blog.php’;
$blog=new Blog();
echo $blog->GetBlogInfo();
?>
root/app/blog.php :[/B]
require_once ‘../lib/smarty/functions.php’;
?>
class Blog
{
public function GetBlogInfo()
{
return ‘This is a test of blog!’;
}
}
?>
echo ‘root/app/blog.php loaded successed!’;
?>
首先,我们从浏览器里直接输入http://localhost/root/app/blog.php,浏览器显示:
———————————————————————-
root/app/blog.php loaded successed!
———————————————————————-
文件加载成功,没发生任何警告或错误。
接下来,我们在浏览器中请求如下网站:http://localhost/root/index.php,浏览器显示出如下错误信
息:
———————————————————————————
Warning: require_once(../lib/smarty/functions.php)
[function.require-once]: failed to open stream: No such file or
directory in T:\Study\PHP_REL\Projects\root\app\blog.php on line 2
Fatal error: require_once() [function.require]: Failed opening
required &l