发布于2024-11-03 21:55 阅读(728) 评论(0) 点赞(17) 收藏(3)
我的前端模板上有一些 HTML 格式,它取决于数组上 foreach 循环的结果,在这个例子中,为了获得正确的格式,它期望 panel_type_id 的顺序为 4,6,3,否则它会构建错误的格式。
如果按照 4、6、3 的顺序添加面板,那么就没有问题。
有没有办法在加载时对数组进行重新排序,以便无论如何它都遵循这个顺序?
<div class="row middle">
<?php foreach($panelResult as $PR): ?>
<?php if($PR['panel_type_id'] == 4){ ?>
<!-- Left -->
<div class="col-lg-6" >
<div class="row" style="height:50%; padding-bottom: 15px;">
<div class="col-lg-12" style="height:100%;">
<div style="/*background-color: rgba(255, 255, 255, 0.5);*/ height: 100%; ">
<?php echo $PR['content']?>
</div>
</div>
</div>
<?php } elseif($PR['panel_type_id'] == 6){?>
<div class="row" style="height:50%; padding-top: 15px;">
<div class="col-lg-12" style="height:100%;">
<div style="/*background-color: rgba(255, 255, 255, 0.5);*/ height: 100%;">
<?php echo $PR['content']?>
</div>
</div>
</div>
</div>
<?php } elseif($PR['panel_type_id'] == 3){?>
<div class="col-lg-6" >
<div style="/*background-color: rgba(255, 255, 255, 0.5);*/ height: 100%; ">
<?php echo $PR['content']?>
</div>
</div>
<?php } ?>
<?php endforeach; ?>
</div><!--end row middle-->
您可以使用usort并定义自己的函数。
请考虑以下情况:
$panelResult = array(["panel_type_id" => 3, "content" => "CCC"], ["panel_type_id" => 4, "content" => "BBB"], ["panel_type_id" => 6, "content" => "AAA"]);
function cmp($a, $b) {
$goodOrder = [4,6,3];
return array_search($a["panel_type_id"], $goodOrder) - array_search($b["panel_type_id"], $goodOrder);
}
usort($panelResult, "cmp");
现在的顺序$panelResult
将是:4, 6, 3
所以你只需继续使用原来的代码
作者:黑洞官方问答小能手
链接:http://www.qianduanheidong.com/blog/article/534982/04b69ae8e4d9532a245b/
来源:前端黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 前端黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-3
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!