rename('/images/old_name.jpg', '/images/new_name.jpg');
这段代码提示文件不存在。
调用文件的脚本放在/source/
文件夹中。
文件可以从http://site.com/images/old_name.jpg
打开。
如何从根目录获取这些文件?
rename
是一个文件系统函数,需要文件系统路径。但看起来你正在使用URI路径。
你可以使用$_SERVER['DOCUMENT_ROOT']
将文档根目录的路径前置:
rename($_SERVER['DOCUMENT_ROOT'].'/images/old_name.jpg', $_SERVER['DOCUMENT_ROOT'].'/images/new_name.jpg');
或者更加灵活的方式,使用当前文件路径__FILE__
的dirname
函数:
rename(dirname(__FILE__).'/images/old_name.jpg', dirname(__FILE__).'/images/new_name.jpg');
或者使用相对路径。由于你正在/script文件夹中,..
可以向上走一级目录:
rename('../images/old_name.jpg', '../images/new_name.jpg');
在 PHP 中,根目录(/
)是文件系统的根目录而不是"webroot"。如果 PHP 文件位于/source/
目录中,而图像位于/source/images/
中,则可以这样使用:
rename('images/old_name.jpg', 'images/new_name.jpg');