2015-10-16 69 views
1

我試圖在我的瀏覽器上顯示我的圖像(以base64編碼)。試圖顯示以base64編碼的圖像

這是我曾嘗試:

 {{$projects}} 
     <hr> 
     @foreach ($projects as $project) 
      @if ($project['name'] != null) 
       <p>Project {{ $project['name'] }}</p> 
       <img src="data:image/{{$project['image_type']}};base64,{{$project['image']}}" alt="Project picture" > 
      @endif 
     @endforeach 

看起來像這樣的瀏覽器鏈接:http://i.imgur.com/U1YUcSo.png

不幸的是,沒有工作了。

顯示圖像之前。我上傳了一個圖像到我的數據庫,下面的代碼:

public function store(Request $request) 
{ 
    if($request['file'] != null) { 
     $file = $request['file']; 
     $fileName = $file->getClientOriginalName(); 
     $imageType = pathinfo($fileName, PATHINFO_EXTENSION); 

    } else { 
     $fileName = null; 
     $imageType = null; 
    } 
    Project::create([ 
     'name' => $request['name'], 
     'content' => $request['content'], 
     'image' => base64_encode($fileName), 
     'image_type' => $imageType, 
    ]); 

    return redirect('/projects'); 
} 

有人可能會告訴我我做錯了什麼嗎?

回答

1

Niloct是正確的。

insted的的

base64_encode($fileName); 

必須使用

base64_encode(file_get_contents($fileName));