PHP数组元素在引导程序中未正确输入



这些是我要插入引自式旋转木马的图像链接:

function display_slides() {
    $count = 10;
    $iter = 0;
    $image_links = ['https://i.imgur.com/9wHVhck.jpg', 'https://i.imgur.com/SpBfUZi.jpg', 'https://i.imgur.com/ZqoEU9o.jpg', 'https://i.imgur.com/n2JY9jj.jpg', 'https://i.imgur.com/yD5I5WH.jpg', 'https://i.imgur.com/JKNnuSE.jpg', 'https://i.imgur.com/YwAmPYu.jpg', 'https://i.imgur.com/T7NBjJm.jpg', 'https://i.imgur.com/ujJ3g1k.jpg'];
    while ($iter < $count) {
        if ($iter == 0) {
            $output .='
<div class="carousel-item active">
    <img class="d-block w-100" src="https://i.imgur.com/dCS4tQk.jpg" alt="Background Image">
    <div class="container">
        <div class="carousel-caption">
            <h2>Header</h2>
            <p>Sample text</p>
        </div>
    </div>
</div>
';
        } else {
// print_r($image_links[$iter]);
            $output .='
<div class="carousel-item">
    <img class="d-block w-100 src=' . $image_links[$iter] . ' alt="Background Image">
         <div class="container">
        <div class="carousel-caption">
            <h2>Header</h2>
            <p>Sample text</p>
        </div>
    </div>
</div>
';
        }
        $iter ++;
    }
    return $output;
}

我想输入$ image_links中的链接到IMG标签的SRC。第一个幻灯片(链接是硬编码),作品和其余幻灯片不起作用。链接到完整的PHP文件我在这里做错了什么?

兄弟。您缺少IMG标签class="d-block w-100中的关闭引号

此代码将非常适合您。

$image_links = ['https://i.imgur.com/9wHVhck.jpg', 'https://i.imgur.com/SpBfUZi.jpg', 'https://i.imgur.com/ZqoEU9o.jpg', 'https://i.imgur.com/n2JY9jj.jpg', 'https://i.imgur.com/yD5I5WH.jpg', 'https://i.imgur.com/JKNnuSE.jpg', 'https://i.imgur.com/YwAmPYu.jpg', 'https://i.imgur.com/T7NBjJm.jpg', 'https://i.imgur.com/ujJ3g1k.jpg'];
    for ($i=0; $i <count($image_links) ; $i++) { 
        // echo $image_links[$i];exit;
        echo '<div class="carousel-item">
                <img class="d-block w-100" src="'.$image_links[$i].'" alt="Background Image">
                     <div class="container">
                    <div class="carousel-caption">
                        <h2>Header</h2>
                        <p>Sample text</p>
                    </div>
                </div>
            </div>';
    }

似乎您忘了关闭类属性。您的代码

<img class="d-block w-100 src=' . $image_links[$iter] . ' alt="Background Image">

工作代码

<img class="d-block w-100" src="'.$image_links[$iter].'" alt="Background Image">

我对代码进行了一些清理,并使用了一个foreach循环而不是使用迭代器。我强烈建议您在要访问数组时使用foreach循环,因为它通常更容易阅读。正如其他建议的那样,您的类属性上也缺少引号标记,也已修复下面。

使用诸如计数和迭代器之类的变量是不必要的,一旦进入多维数组,可能很难阅读。

 function display_slides() {
    $image_links = ['https://i.imgur.com/9wHVhck.jpg', 'https://i.imgur.com/SpBfUZi.jpg', 'https://i.imgur.com/ZqoEU9o.jpg', 'https://i.imgur.com/n2JY9jj.jpg', 'https://i.imgur.com/yD5I5WH.jpg', 'https://i.imgur.com/JKNnuSE.jpg', 'https://i.imgur.com/YwAmPYu.jpg', 'https://i.imgur.com/T7NBjJm.jpg', 'https://i.imgur.com/ujJ3g1k.jpg'];
    $output .='
    <div class="carousel-item active">
    <img class="d-block w-100" src="https://i.imgur.com/dCS4tQk.jpg" alt="Background Image">
    <div class="container">
    <div class="carousel-caption">
    <h2>Header</h2>
    <p>Sample text</p>
    </div>
    </div>
    </div>
    ';
     foreach ($image_links as $image ) {
         $output .='
         <div class="carousel-item">
         <img class="d-block w-100 src='.$image.'" alt="Background Image">
         <div class="container">
         <div class="carousel-caption">
         <h2>Header</h2>
         <p>Sample text</p>
         </div>
         </div>
         </div>
        ';
        }
    }
    return $output;
}

i,因为有一些html语法错误,因此没有给您src的引号(")。它应该像下面的

} else {
      $output .='
      <div class="carousel-item">
        <img style="border:1px solid #0f0" class="d-block w-100 src="'.$image_links[$iter].'" alt="Background Image"> // note the quotes added on src=""

希望它清楚。

快乐的编码。

相关内容

最新更新