phpforeach语句来拉取图像,如果没有找到,则用holdingimage替换


php foreach statement to pull images, if none found replace with holding image

我试图在一些图像上运行以下foreach,但它不喜欢我的声明:

<?php foreach ($images as $image) {
    if (count($images) > 1) {
        '<img src="'.$image.'" class="slide">
         <a href="#" class="zoom"><i class="icon-popup"></i></a>'
    } else {
        '<img class="slide" src="no-image-large.jpg">';
    }
endforeach ?>

作为一个非php大师,我哪里出了问题?

这里有几件事。

首先,您要混合foreach语法。要么做

  1. foreach($a as $b) { code }
  2. foreach($a as $b): code endforeach;

此外,您需要将字符串回显到页面,否则它只是PHP中的一个字符串,第一个字符串上也缺少一个分号。

<?php 
    $images[0] = "image1";
    $images[1] = "image2";
    foreach ($images as $image) {
        if (count($images) > 1) {
            echo '<img src="'.$image.'" class="slide">
            <a href="#" class="zoom"><i class="icon-popup"></i></a>';
        } else {
            echo '<img class="slide" src="no-image-large.jpg">';
        }
    } 
?>

您的代码是正确的。但您需要正确关闭foreach循环。这对您有帮助吗。

<?php foreach ($images as $image) {
if (count($images) > 1) {
    '<img src="'.$image.'" class="slide">
     <a href="#" class="zoom"><i class="icon-popup"></i></a>'
} else {
    '<img class="slide" src="no-image-large.jpg">';
}
} ?>