分类如何运作?

发布于 2024-10-19 15:18:20 字数 120 浏览 1 评论 0原文

我正在查看我的一些旧工作,发现分类函数可以完美地满足我需要的某些用途,尽管我尝试了一种极其不同且冗长的方式。

所以我的问题是,asort在排序时如何保持关联?我认为数组可以按键或按值排序,是否有第三个排序基准?

I was having a look over some of my old work and saw that the asort function would have worked perfectly for some of the uses I needed, although I attempted an extremely different and longwinded way.

So my question is exactly, how does asort maintain association when sorting? I thought an array can be sorted by key, or by value, is there a third sorting pivot?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

影子的影子 2024-10-26 15:18:20

“第三个枢轴”是内存/数组中的实际位置。
当对以下两个数组执行 foreach 时,您会清楚地看到这一点,这两个数组相同,但顺序不同:

$x1=array('mmm'=>'mmm','bbb'=>'bbb','ccc'=>'ccc');
$x2=array('ccc'=>'ccc','bbb'=>'bbb','mmm'=>'mmm');

foreach($x1 as $k=>$v) echo "{$k} {$v}";
foreach($x2 as $k=>$v) echo "{$k} {$v}";

对这两个数组执行默认排序将导致两种情况:

$x1=array('bbb'=>'bbb','ccc'=>'ccc','mmm'=>'mmm');
$x2=array('bbb'=>'bbb','ccc'=>'ccc','mmm'=>'mmm');

The "third pivot" is the actual location in memory/array.
You will see it clearly when doing a foreach on the following two arrays, which are the same, but have different order:

$x1=array('mmm'=>'mmm','bbb'=>'bbb','ccc'=>'ccc');
$x2=array('ccc'=>'ccc','bbb'=>'bbb','mmm'=>'mmm');

foreach($x1 as $k=>$v) echo "{$k} {$v}";
foreach($x2 as $k=>$v) echo "{$k} {$v}";

doing the default asort on those two arrays will result in both cases in:

$x1=array('bbb'=>'bbb','ccc'=>'ccc','mmm'=>'mmm');
$x2=array('bbb'=>'bbb','ccc'=>'ccc','mmm'=>'mmm');
蓝海似她心 2024-10-26 15:18:20

来自手册

asort — 对数组进行排序并维护
索引关联

因此,例如:

  • Asort 将仅按升序排序,保持索引=>值关联。
  • Arsort 是相同的,但是以 desc 方式。

数组排序功能在这里。

基本函数仅按键或值排序,但有以下选项:

  • 是否维护索引->值关联 是否
  • 使用自定义函数进行排序
  • Asc 或 DES
  • 是否区分大小写

From the manual :

asort — Sort an array and maintain
index association

So, for example :

  • Asort will just sort by value in ascending way keeping the index=>value association.
  • Arsort is the same but in desc way.

The manual is pretty clear on Array sorting function here.

Basic function only sort by key or values but there are options:

  • index->value association maintained or not
  • Use of a custom function for sorting or not
  • Asc or Desc
  • case sensitive or not
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文