结果应该以逗号分隔
result should be obtained as comma separated
我的幻灯片代码在静态形式下看起来像这样。
<div id="demo-1" data-zs-src='["<?php echo base_url();?>assets/images/s1.jpg", "<?php echo base_url();?>assets/images/sd1.jpg", "<?php echo base_url();?>assets/images/slide7.jpg", "<?php echo base_url();?>assets/images/sd3.jpg"]' data-zs-overlay="dots">
<div class="demo-inner-content">
<h1><span>Tasty</span> & <span>Healthy</span></h1>
<p>For those who have taste for life.</p>
</div>
当我将其更改为动态时,我像这样更改了代码
<?php foreach($slide1 as $ss){?>
data-zs-src='["<?php echo base_url();?>uploads/<?php echo $ss->image;?>" ]' alt=""
data-zs-overlay="dots">
<div class="demo-inner-content">
<h1><span>Tasty</span> & <span>Healthy</span></h1>
<p>For those who have taste for life.</p>
</div>
我的问题是只有在每张图像后添加逗号时幻灯片才能工作,我想添加内爆功能但它不能正常工作,我的内爆代码如下所示
<div id="demo-1" data-zs-src='[<?php foreach( $slides as $slide ){ $images="<?php echo base_url();?>uploads/<?php echo $slide->image;?>";
?>"<?php echo implode(',',$images);?>"<?php }?>]'
data-zs-overlay="dots">
<div class="demo-inner-content">
<h1><span>Tasty</span> & <span>Healthy</span></h1>
<p>For those who have taste for life.</p>
</div>
所以你必须考虑你要在这里实现的目标...
您似乎在尝试对 foreach 循环内的每个字符串执行内爆...除了会产生错误之外,在每个循环中执行内爆是没有意义的。它是你在创建数组条目后要做的事情......内爆适用于数组,而不是字符串。它从数组生成字符串。
基本上你想要获取一个对象数组并将它们转换成逗号分隔的字符串。
我不确定你为什么坚持将所有代码放在 HTML 代码中你希望它出现的地方......我会像这样把它分开......
<?php foreach ($slides as $slide) {
$images[] = base_url('uploads/') . $slide->image;
} ?>
<div id="demo-1" data-zs-src='["
<?= implode(',', $images); ?>
"]'
data-zs-overlay="dots">
<div class="demo-inner-content">
<h1><span>Tasty</span> & <span>Healthy</span></h1>
<p>For those who have taste for life.</p>
</div>
第 1 步:创建图像数组
<?php foreach ($slides as $slide) {
$images[] = base_url('uploads/') . $slide->image;
} ?>
这可以在您的控制器或助手中完成,但在您看来同样好。取决于您喜欢如何构建代码。
第 2 步:将生成的字符串放在您想要的位置。
<div id="demo-1" data-zs-src='["
<?= implode(',', $images); ?>
"]'
data-zs-overlay="dots">
<div class="demo-inner-content">
<h1><span>Tasty</span> & <span>Healthy</span></h1>
<p>For those who have taste for life.</p>
</div>
您可以进一步重构它,但我已经迈出了重构它的第一步,因此希望它对您有意义。
注意:我使用 <?=
而不是 <?php echo
(自 PHP 5.4.0 起可用)所以如果您正在使用某些东西5.4.0 之前的版本坚持 <?php echo
。
我的幻灯片代码在静态形式下看起来像这样。
<div id="demo-1" data-zs-src='["<?php echo base_url();?>assets/images/s1.jpg", "<?php echo base_url();?>assets/images/sd1.jpg", "<?php echo base_url();?>assets/images/slide7.jpg", "<?php echo base_url();?>assets/images/sd3.jpg"]' data-zs-overlay="dots">
<div class="demo-inner-content">
<h1><span>Tasty</span> & <span>Healthy</span></h1>
<p>For those who have taste for life.</p>
</div>
当我将其更改为动态时,我像这样更改了代码
<?php foreach($slide1 as $ss){?>
data-zs-src='["<?php echo base_url();?>uploads/<?php echo $ss->image;?>" ]' alt=""
data-zs-overlay="dots">
<div class="demo-inner-content">
<h1><span>Tasty</span> & <span>Healthy</span></h1>
<p>For those who have taste for life.</p>
</div>
我的问题是只有在每张图像后添加逗号时幻灯片才能工作,我想添加内爆功能但它不能正常工作,我的内爆代码如下所示
<div id="demo-1" data-zs-src='[<?php foreach( $slides as $slide ){ $images="<?php echo base_url();?>uploads/<?php echo $slide->image;?>";
?>"<?php echo implode(',',$images);?>"<?php }?>]'
data-zs-overlay="dots">
<div class="demo-inner-content">
<h1><span>Tasty</span> & <span>Healthy</span></h1>
<p>For those who have taste for life.</p>
</div>
所以你必须考虑你要在这里实现的目标...
您似乎在尝试对 foreach 循环内的每个字符串执行内爆...除了会产生错误之外,在每个循环中执行内爆是没有意义的。它是你在创建数组条目后要做的事情......内爆适用于数组,而不是字符串。它从数组生成字符串。
基本上你想要获取一个对象数组并将它们转换成逗号分隔的字符串。
我不确定你为什么坚持将所有代码放在 HTML 代码中你希望它出现的地方......我会像这样把它分开......
<?php foreach ($slides as $slide) {
$images[] = base_url('uploads/') . $slide->image;
} ?>
<div id="demo-1" data-zs-src='["
<?= implode(',', $images); ?>
"]'
data-zs-overlay="dots">
<div class="demo-inner-content">
<h1><span>Tasty</span> & <span>Healthy</span></h1>
<p>For those who have taste for life.</p>
</div>
第 1 步:创建图像数组
<?php foreach ($slides as $slide) {
$images[] = base_url('uploads/') . $slide->image;
} ?>
这可以在您的控制器或助手中完成,但在您看来同样好。取决于您喜欢如何构建代码。
第 2 步:将生成的字符串放在您想要的位置。
<div id="demo-1" data-zs-src='["
<?= implode(',', $images); ?>
"]'
data-zs-overlay="dots">
<div class="demo-inner-content">
<h1><span>Tasty</span> & <span>Healthy</span></h1>
<p>For those who have taste for life.</p>
</div>
您可以进一步重构它,但我已经迈出了重构它的第一步,因此希望它对您有意义。
注意:我使用 <?=
而不是 <?php echo
(自 PHP 5.4.0 起可用)所以如果您正在使用某些东西5.4.0 之前的版本坚持 <?php echo
。