php文档说,如果成功,下面将返回true
,如果失败,则返回false
。
rename('test/test1/','test/test2/test1/');
我该如何判断是真是假?如果我运行了确切的函数,并且它成功了,文件夹就会按预期移动,并且没有输出。如果失败,它只会打印出一条错误消息。
如何测试true
还是false
,以便判断重命名功能是否成功,而不会出现错误消息?
这是正确的方法吗?
error_reporting(0);
if(rename('test/test1/','test/test1/test2/test1/')===true){
print 'true';
} else{
print 'false';
}
您只需执行此操作即可获得返回值:
$success = rename($oldValue, $newValue);
然后,您可以使用$success
的值执行任何需要的操作。
检查返回值是一个简单的问题,按照您的建议执行(或者,如果方便,您可以将返回值保存到变量中)。
然而,最好不要更改全局错误级别,而是使用错误控制运算符@
:
if(@rename('test/test1/','test/test1/test2/test1/')===true) {
// successfuly rename
}
else {
// failed
}
在高级场景中,如果有可能采取措施进行更正,您可能还想了解错误情况是什么。为此,您需要rename
将产生的警告中的错误消息。你可以使用与我在这里描述的类似的技术来实现这一点。