PHP array elements not entering correctly in bootstrap
这些是我想插入到引导轮播中的图像链接:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | 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 .=' <img class="d-block w-100" src="https://i.imgur.com/dCS4tQk.jpg" alt="Background Image"> Header <p>Sample text</p> '; } else { // print_r($image_links[$iter]); $output .=' <img class="d-block w-100 src=' . $image_links[$iter] . ' alt="Background Image"> Header <p>Sample text</p> '; } $iter ++; } return $output; } |
我想将 $image_links 中的链接输入到 img 标签的 src 中。第一张幻灯片(链接是硬编码的)有效,其余幻灯片无效。
链接到完整的 php 文件
我在这里做错了什么?
兄弟。您在 img 标签
中缺少右引号
此代码将完美地为您工作..
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | $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 ' <img class="d-block w-100" src="'.$image_links[$i].'" alt="Background Image"> Header <p>Sample text</p> '; } |
我稍微清理了代码并使用了 foreach 循环而不是使用迭代器。我强烈建议在您想要访问数组时使用 foreach 循环,因为它通常更容易阅读。正如其他人所建议的那样,您的 class 属性中也缺少一个引号,该引号也已在下面修复。
使用像计数和迭代器这样的变量是不必要的,一旦进入多维数组就会变得难以阅读。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | 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 .=' <img class="d-block w-100" src="https://i.imgur.com/dCS4tQk.jpg" alt="Background Image"> Header <p><center>[wp_ad_camp_3]</center></p><p>Sample text</p> '; foreach ($image_links as $image ) { $output .=' <img class="d-block w-100 src='.$image.'" alt="Background Image"> Header <p>Sample text</p> '; } } return $output; } |
你好像忘记关闭 class 属性了。
你的代码
1 | <img class="d-block w-100 src=' . $image_links[$iter] . ' alt="Background Image"> |
工作代码
1 | <img class="d-block w-100" src="'.$image_links[$iter].'" alt="Background Image"> |
我因为有一些 HTML 语法错误,你没有为 src 提供引号 (")。它应该像下面
1 2 3 4 | } else { $output .=' <img style="border:1px solid #0f0" class="d-block w-100 src="'.$image_links[$iter].'" alt="Background Image"> // note the quotes added on src="" |
希望它清楚。
快乐编码。