php rename错误原因的查找方法
打印出错误的原因。
error_get_last()似乎没有返回任何内容。rename()返回true false,而不是异常。
if (!rename($file->filepath, $full_path)) { $error = error_get_last(); watchdog('name', "Failed to move the uploaded file from %source to %dest", array('%source' => $file->filepath, '%dest' => $full_path)); }
解决办法
首先,最好在以下情况之前新增一些安全检查:
if (file_exists($old_name) && ((!file_exists($new_name)) || is_writable($new_name))) { rename($old_name, $new_name); }
其次,可以开启错误报告:
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
知识点扩展:
语句:rename(oldname,newname,context)
参数 | 描述 |
oldname | 必需,规定要重命名的文件或目录. |
newname | 必需,规定文件或目录的新名称 |
context | 必需,规定文件句柄的环境,context 是可修改流的行为的一套选项 |
注释:在 php 4.3.3 之前,rename() 不能在基于 *nix 的系统中跨磁盘分区重命名文件.
注释:用于 oldname 中的封装协议必须和用于 newname 中的相匹配.
注释:对 context 的支持是 php 5.0.0 添加的.
到此这篇关于php rename错误原因的查找方法的文章就介绍到这了,更多相关php rename错误原因内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
PHP使用curl_multi_select解决curl_multi网页假死问题的方法
这篇文章主要介绍了PHP使用curl_multi_select解决curl_multi网页假死问题的方法,结合实例形式分析了使用curl_multi的过程中并发处理事务导致cpu占用率过高时的解决方法,需要的朋友可以参考下2018-08-08PHP 杂谈《重构-改善既有代码的设计》之一 重新组织你的函数
我把我比较喜欢的和比较关注的地方写下来和大家分享。上次我写了篇《php 跟老大的对话》。还是有很多疑问,这书帮了我不少的忙2012-04-04深入php define()函数以及defined()函数的用法详解
本篇文章是对php中的define()函数以及defined()函数的用法进行了详细的分析介绍,需要的朋友参考下2013-06-06
最新评论