文件上传成功但php中缺少文件

时间:2016-05-09 14:14:43

标签: php image laravel upload

我有这个问题,上传结果成功,但当我进入上传目录时,文件不在那里......我在上做了回音 final_path ,这就是我想要上传文件的目录。

$final_path=public_path('attachment\states');
$final_filename =  md5(date("Y-m-d H:i:s")).rand().'.png';

if(move_uploaded_file($_FILES['file']['tmp_name'], $final_path/$final_filename))
{echo 'good'. $final_path; }
else
{ echo 'bad';}

输出是:

goodC:\xampp\htdocs\panel\public\attachment\states

怎么了?

2 个答案:

答案 0 :(得分:0)

此操作正在对两个字符串执行除法,而不是为您提供所期望的路径。事实上,你没有得到被零除错误的唯一原因是因为$final_filename以数字开头。试试这个:

if (move_uploaded_file($_FILES['file']['tmp_name'], $final_path . DIRECTORY_SEPARATOR . $final_filename))

答案 1 :(得分:0)

我建议使用Laravel功能移动上传的文件。例如。

class MyController extends Controller{
    public function fileUpload(Request $request){
        if (!$request->hasFile('file')) {
            // file not received
        }

        if (!$request->file('file')->isValid()) {
            // file is not valid
        }

        $final_path = public_path() . "\attachment\states\\";
        $final_filename =  md5(date("Y-m-d H:i:s")).rand().'.png';

        $request->file('photo')->move($final_path, $final_filename);

        return 'File uploaded correctly';


    }

}