多个file_exists函数在一个if语句中相互覆盖

时间:2016-11-18 16:26:36

标签: php file if-statement override

我正在创建一个word to image转换器和多个图像字,我需要写一些更复杂的if语句。

我的第一个if语句适用于2个图像字(word = image + image):

$words = array("car", "bike",...)

foreach ($words as $x => $word) {

    $jpg = "Pictures/".$words[$x] . ".jpg";
    $jpg1 = "Pictures/".$word."/".$word. "1.jpg";
    $jpg2 = "Pictures/".$word."/".$word. "2.jpg";
    $jpg3 = "Pictures/".$word."/".$word. "3.jpg";

    if (file_exists($jpg1) && file_exists($jpg2)) {
        print '<div class="result1"><div id="result1" style="background-image:url('.$jpg1.')"></div>
        <div id="result2" style="background-image:url('.$jpg2.')"></div>
        <a id="word'. $x .'">'. $words[$x] .'</a></div>';
    }

if spratement表示如果目录jpg1 and jpg2中的文件存在,请打印此...如果它只找到这些目录中的两个文件,它将起作用。

但是,当我尝试将{3} file_exists函数添加到else if语句时,如下所示:

else if (file_exists($jpg1) && file_exists($jpg2) && file_exists($jpg3)) {
    print '<div class="result2"><div id="result3" style="background-image:url('.$jpg1.')"></div>
    <div id="result4" style="background-image:url('.$jpg2.')"></div>
    <div id="result5" style="background-image:url('.$jpg3.')"></div>
    <a id="word'. $x .'">'. $words[$x] .'</a></div>';
}

第一个if语句会覆盖第二个语句,即使第二个语句是正确的。而第一个不是。

我想问一下我的语法是否一切正确?或者如果我甚至可以使用这样的多个file_exists函数。

或者为什么这可能不起作用的任何其他原因。

0 个答案:

没有答案