Php检查循环中的file_get_contents

时间:2016-07-25 09:24:28

标签: php arrays file loops file-get-contents

如何使用file_get_contents检查是否有内容,如果有内容则打印出来。

我试过以下但是没有用: (我正在使用laravel blade语法)

    @if(file_get_contents($images[$i]->scenes) == 0) //empty
        <img class="input-preview" src="{{ asset('img/placeholder654x363.png') }}">
    @else
        <img class="input-preview" src="{{ 'data:image/jpeg;base64,'.base64_encode(file_get_contents($images[$i]->scenes)) }}">

我收到错误,因为我有两个文件(字符串路径),如下所示:

  

0 - &gt;没有图像1 - &gt;图像

这就是为什么我试图循环并获取内容,如果有内容。

1 个答案:

答案 0 :(得分:1)

当你使用file_get_contens结果返回是一个字符串时,如果这个文件为空你将得到空字符串

所以使用此代码

@if(!file_exists($images[$i]->scenes) || file_get_contents($images[$i]->scenes) == false) //empty
    <img class="input-preview" src="{{ asset('img/placeholder654x363.png') }}">
@else
    <img class="input-preview" src="{{ 'data:image/jpeg;base64,'.base64_encode(file_get_contents($images[$i]->scenes)) }}">
  • !file_exists($images[$i]->scenes)表示文件不存在
  • file_get_contents($images[$i]->scenes) == false文件存在且内容为空

这些是不同的。