我一直试图在手册中阅读此内容,但基本上我已经array
我试图扭转它并排除最后一项。所以我目前在我的阵列中有14个项目,我将其反转,它显示14-2。我的代码让它排除了最后一项。所以我认为它在技术上有效,但我实际上希望它输出为13-1。我尝试使用array_pop
和array_shift
,但我不知道如何将其与array_reverse
集成。
function smile_gallery( $atts ) {
if( have_rows('smile_gallery', 3045) ):
$i = 1;
$html_out = '';
$html_out .= '<div class="smile-container">';
$html_out .= '<div class="fg-row row">';
// vars
$rows = get_field('smile_gallery', 3045);
$count = count( get_field('smile_gallery', 3045) );
$html_out .= '<div class="col-md-8">'; // col-md-offset-1
$html_out .= '<div class="smile-thumbs">';
foreach( array_reverse($rows) as $row) :
// vars
$week = "smile_week";
$img = "smile_img";
$caption = "smile_caption";
// Do stuff with each post here
if( $i < $count) :
$html_out .= '<div class="smile-thumb-container">';
$html_out .= '><h6>Week ' . $row["smile_week"] . '</h6></a>'; // smile thumb week
$html_out .= '</div>'; // smile thumb container
endif;
$i++;
endforeach;
$html_out .= '</div>';
$html_out .= '</div>';
$html_out .= '</div>';
$html_out .= '</div>'; // smile container
endif;
return $html_out;
}
add_shortcode( 'show_smiles', 'smile_gallery' );
答案 0 :(得分:3)
我正在阅读以下问题,如果我错了,请纠正我。
我有一个数组,我试图将其反转并排除第一个和最后一个项目。
为此,您知道自己想要使用array_pop()和array_shift()。
<?php
//
$rows = get_field('smile_gallery', 3045);
$count = count($rows);
array_pop($rows);
array_shift($rows);
foreach (array_reverse($rows) as $row):
...
如果您想先倒退然后再进行操作,如果您从两端移除物品则不需要。从foreach中取出array_reverse
,然后进行操作。
<?php
// vars
$rows = get_field('smile_gallery', 3045);
$count = count($rows);
$rows = array_reverse($rows);
array_pop($rows);
array_shift($rows);
foreach ($rows as $row):
...
如果有帮助,请告诉我。