是否有可能以递增的方式对这两个变量进行元素排序?

问题描述 投票:-1回答:2

如何将值升序而不以逗号结尾?

foreach($filtered2 as $date) $var .= $date->format('d') . ", ";
foreach($filtered2b as $date) $var2 .= $date->format('d') . ", ";

echo $var2 . $var;

我的返回值为:

03,10,17,24,28 03,10,17,24,25

我希望它看起来像这样:

03,03,10,17,17,17,24,24,25,28

php
2个回答
0
投票

您同时具有$filtered2$filtered2b,所以我使用$filteredd将它们合并为array_merge。使用sort以升序排序(或ksort以降序排序)。然后最后implode以逗号加入。

$filteredd = array_merge($filtered2, $filtered2b);
$filteredd = array_map(function ($d) {return $d->format('d');}, $filteredd);
sort($filteredd);
print_r(implode(',', $filteredd));

0
投票

这是您要实现的目标吗?

$data = [01, 58, 46, 98, 12, 64, 06, 45];

asort($data);

$sorted = implode(', ', $data);

echo $sorted;

无论如何,implode()似乎是这里的关键。

© www.soinside.com 2019 - 2024. All rights reserved.