取消设置不知道第一项键值的数组的第一个元素
Posted
技术标签:
【中文标题】取消设置不知道第一项键值的数组的第一个元素【英文标题】:Unset first element of array that don't know first item's key value 【发布时间】:2017-09-15 03:36:33 【问题描述】:我正在使用foreach
获取图像列表,但我不想显示数组的第一张图像,但我不知道如何使它工作。这是我的代码:
$portfolio_gallery_image = get_post_meta( get_the_ID(), "portfolio_gallery_image", true );
<div class="folio-gallery grid-masonry clearfix">
<?php
foreach ( $portfolio_gallery_image as $key => $image )
?>
<a class="folio-item col-3 ndSvgFill grid-item" href="<?php echo esc_url($image) ?>">
<img src="<?php echo esc_attr($image) ?>" >
</a>
<?php ?>
</div>
这是数组
Array
(
[2098] => http://dione.thememove.com/wp-content/uploads/2016/04/11.jpg
[2097] => http://dione.thememove.com/wp-content/uploads/2016/04/10.jpg
[2062] => http://dione.thememove.com/wp-content/uploads/2016/06/f_08.jpg
[2084] => http://dione.thememove.com/wp-content/uploads/2016/06/10.jpg
[2096] => http://dione.thememove.com/wp-content/uploads/2016/04/9.jpg
[2082] => http://dione.thememove.com/wp-content/uploads/2016/06/08.jpg
[2094] => http://dione.thememove.com/wp-content/uploads/2016/04/7.jpg
)
非常感谢您的帮助。谢谢。
【问题讨论】:
然后代替 foreach 使用 for 循环 你能在你的问题中打印你的数组吗? 要从数组中删除第一个元素,请参考here 要从数组中删除第一个元素,请参考here 请refer 删除数组中的第一个元素 【参考方案1】:你可以这样做,
<?php
function custom_function(&$arr)
list($k) = array_keys($arr);
$r = array($k => $arr[$k]);
unset($arr[$k]);
return $r;
custom_function($portfolio_gallery_image);
foreach ($portfolio_gallery_image as $key => $image)
?>
<a class="folio-item col-3 ndSvgFill grid-item" href="<?php echo esc_url($image) ?>">
<img src="<?php echo esc_attr($image) ?>" >
</a>
<?php ?>
array_shift 将一个元素移出数组的开头。
【讨论】:
谢谢。我收到了这个错误:Warning: Invalid argument supplied for foreach()
如果你的数组像例如[a,b,c,d] 然后 array_shift 将跳过 a 然后数组将具有 [b,c,d] 这就是它的工作原理。我可以知道你的数组是什么样子,直到 n 除非我不知道你的数组的操作【参考方案2】:
尝试下面的代码,在代码中的每个之前从数组中删除第一个键/值。
$new_image_array = array_shift($portfolio_gallery_image);
【讨论】:
以上是关于取消设置不知道第一项键值的数组的第一个元素的主要内容,如果未能解决你的问题,请参考以下文章