您的位置:首页 > 编程语言 > PHP开发

thinkphp相对路径问题及其使用php原生文件操作的方法

2014-12-28 21:15 801 查看
今天做了下测试,在thinkphp项目中任意一个Controller \ Model\ Common/function.php里写file_put_contents('log.txt',"log info")

最后生成的log.txt居然位于项目根目录!

难怪thinkphp地址栏格式是http://localhost/项目名/index.php/模块名/控制器名/方法名/参数,这也就意味着每次访问thinkphp的网站时,每次都是访问的index.php,通过向该页面传参再路由到其他模块当中。(可能这么理解也不对,回头有空了看看源码确认一下)

于是这样就好办了,php在进行文件操作的时候,使用文件绝对路径居然报错

file_put_contents('/project/file/log.txt','hehe')是报错的,但是file_put_contents(‘../../log.txt',"log info")又没问题,试了其他的比如unlink这些文件操作的函数基本如此。

所以thinkphp只要使用"./Public/".文件名就可以操作公共文件下的文件了

如果要配合框架自带常量诸如 __URL__ __APP__ 使用也好办,只要使用 "..".__URL__ 或者 “..”.__APP__ 就好了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: