douzongluo7542 2018-09-27 07:43
浏览 26
已采纳

PHP从文件夹中回显几个<img>

So I basically have this code:

<?php
    $lang = isset($_GET['lang']) ? $_GET['lang'] : NULL;
    $langArray = array('en', 'de', 'fr', 'es', 'it');

    $img = "<img src='img/".$lang."/1.png' />";
?>

[some useless code here...]

<div class="col ">
    <?php echo $img; ?>
    <p>Here some text under the img</p>
</div>

It will display a different image depending on the language chosen. As you can see, the image is stored in a folder with the name of the language. For example, if you choose 'en' for english, the picture display will be /img/en/1.png.

My problem is that I have multiple pictures in these folders (1.png, 2.png... 5.png). Instead of writing this :

<?php
    $lang = isset($_GET['lang']) ? $_GET['lang'] : NULL;
    $langArray = array('en', 'de', 'fr', 'es', 'it');

    $img = "<img src='img/".$lang."/1.png' />";
    $img = "<img src='img/".$lang."/2.png' />";
    $img = "<img src='img/".$lang."/3.png' />";
    $img = "<img src='img/".$lang."/4.png' />";
    $img = "<img src='img/".$lang."/5.png' />";

?>

Is there a way to echo these pictures with a loop? I'm new to PHP and not sure of what I should write.

Thanks.

  • 写回答

3条回答 默认 最新

  • doushi1900 2018-09-27 07:49
    关注

    You can use loops in html like so

    <?php for($i = 1; $i <= 5; $i++): ?>
        <img src="img/<?= $lang ?>/<?= $i ?>.png" />
    <?php endfor; ?>
    

    <?= is short from <?php echo

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?