Laravel Filename还包含带有striplashes的反斜杠

时间:2015-03-27 10:51:00

标签: php sql laravel mariadb

我遇到了以下问题: 我已经创建了一个简单的图像上传过程。

public function postImage($id){
    $filename = date('Y-m-d_H:i:s').".jpg";
    $note=Note::find($id);
    $destinationPath='/srv/www/htdocs/example.com/api/public/projects/'.$note->project_id.'/notes/'.$id."/images/";
    $file = Request::file('image');
    $file->move($destinationPath, $filename);
    $image = new Image;
    $image->filename='projects/'.$note->project_id."/notes/images/".$filename;
    $image->note_id=$id;
    $image->save();
    $result= $this->respondWithItem($image, new ImageTransformer);
    return $result;
}

当返回文件名时,在这种情况下,文件路径从文件开始,从项目加上结尾,它总是返回文件名 像那样projects\/1\/notes\/images\/2015-03-27_10:44:291.jpg 我当然不希望在我的回复中有反斜杠。

我像这样使用Transformer:

<?php namespace App\Http\Controllers;

use Image;
use League\Fractal\TransformerAbstract;

class ImageTransformer extends TransformerAbstract
{

public function transform(Image $image)
{
    return [
        'id'              => (int) $image->id,
        'filename'           => $image->filename,
        'note_id'            => $image->note_id,
        'updated_at'      => strtotime((string)$image->updated_at),
        'created_at'      => strtotime((string)$image->created_at)
    ];
}
}

我在文件名上尝试了从str_replacestripslashes的所有内容,但它无效。我错过了我做错的事吗? 直接在控制器中返回文件名时,响应是正确的。

0 个答案:

没有答案