我用php做了一个小网站,但是做着做着发现了一个令人头痛的问题,那就是不同目录调用同一文件的问题 比如根目录下有a.php文件,a.php文件中插入了一张图片b.jpg,图片地址为根目录下的images文件夹,我在根目录下创建一个c.php文件,然后在c.php文件中include("a.php"),这样可以正确调用,然后我在根目录下new文件夹中的创建了一个addnew.php,在addnew.php中include("../a.php"),这时会发现图片b.jpg无法显示,因为路径出现了错误,因为同样调用css文件等都会出现这样的情况,很令人头痛,恳请高手帮忙解决一下这个问题,百分相赠
define('ROOT_PATH', str_replace('\\','/',str_replace('insert.php','',__FILE__)));
在入口文件中定义(后者配置文件中),以后ROOT_PATH就代表固定的路径了,你只需要ROOT_PATH.'一个路径'来形成一个完整的路径就行了
一种是 http 路径,他的根就是网站所在目录
对于图片、视频、css等文件,一般建议使用绝对路径
比如 <img src="/images/img.png">
不过这样在离线编辑和调试html文件或模板时,会带来显示问题
最好能做到只向下调用,这就是网站布局的问题了还有一种是 文件系统的路径,一般建议使用相对路径。
可将嵌入文件的路径加入到 include_path 中
同样也是,最好能做到只向下调用
这个最好用。
可以简化一下,把 dirname(__FILE__) 给定个变量,直接用。
echo ROOT_PATH;