php - PHP | 将元素添加到数组并在循环后排序
问题描述
我试图得到一些数值,恢复感谢:wp_get_post_terms
,它检索我自定义分类法的女儿分类法,其中价格以数字形式插入其中。
目标是按照决定的顺序使用 sort 和 rsort 显示价格。
但是,在恢复值时,将元素添加到数组并稍后对它们进行排序是错误的
代码:
foreach ($qprice as $r)
{
$children = $r->term_id;
$child_terms = get_term_children($r->term_id, 'servizi_pro');
$all_terms = wp_get_post_terms($r->ID, 'servizi_pro');
foreach ( $all_terms as $term )
{
if (!in_array($term->term_id, $child_terms))
continue;
$price = $term->name;
$final_price = [$price];
}
rsort($final_price, SORT_NUMERIC);
foreach($final_price as $pr_f) {
echo '<span class="numberCircle"><span>'.str_pad($pr_f, 9).''.'€'.'</span></span>';
}
}
加:
$final_price = [];
foreach ($qprice as $r)
{
$children = $r->term_id;
$child_terms = get_term_children($r->term_id, 'servizi_pro');
$all_terms = wp_get_post_terms($r->ID, 'servizi_pro');
foreach ( $all_terms as $term )
{
if (!in_array($term->term_id, $child_terms))
continue;
$price = $term->name;
$final_price[] = $price;
}
}
sort($final_price, SORT_NUMERIC);
foreach($final_price as $pr_f) {
echo '<span class="numberCircle"><span>'.str_pad($pr_f, 9).'€'.'</span></span>';
}
解决方案
您需要$final_price
在内部foreach
循环之前初始化数组,并将其推送到数组上,而不是每次通过循环都替换它。
foreach ($qprice as $r)
{
$children = $r->term_id;
$child_terms = get_term_children($r->term_id, 'servizi_pro');
$all_terms = wp_get_post_terms($r->ID, 'servizi_pro');
$final_price = [];
foreach ( $all_terms as $term )
{
if (!in_array($term->term_id, $child_terms))
continue;
$price = $term->name;
$final_price[] = $price;
}
rsort($final_price, SORT_NUMERIC);
foreach($final_price as $pr_f) {
echo '<span class="numberCircle"><span>'.str_pad($pr_f, 9).''.'€'.'</span></span>';
}
}
推荐阅读
- ios - 如何找到 Firebase Crashlytics 初始化文件路径并仔细检查它们是否有效?
- c++ - 为什么我不能在 std::unordered_set 中使用引用类型?
- sql - 在 Teradata 中插入大表性能优化
- python - Keras:找到属于 0 个类别的 0 个图像
- arrays - C - 如何在参数向量中的某个位置读取整数?
- swift - Initializer 'init(_:)' 要求 '' 符合 'StringProtocol' SwiftUI Picker with Firebase
- celery - 使用 Airflow 按需并按计划运行参数化作业
- python - Python PyQt5的烦恼,与QPushButton和QmenuBar有关
- c# - 获取 ItemsSource 作为 IList
- r - R中多项逻辑回归的对数似然函数计算