摘要:今天和客户端进行签名校验,打算按照参数的进行升序列排序然后进行处理,但是使用方法进行排序的时候,却发现一个神奇的问题我们这里将数组值的顺序调整下问题出现了,两次排序竟然顺序是不一样的从上找到了答案重点就是
今天和客户端进行api签名校验,打算按照参数的ascii进行升序列排序然后进行sha1处理,但是使用sort方法进行排序的时候,却发现一个神奇的问题
php > $a = ["ZfQW5yH1IkBmn13smeEnWQ==",0,"502857731"]; php > sort($a,0); php > var_dump($a); array(3) { [0]=> string(24) "ZfQW5yH1IkBmn13smeEnWQ==" [1]=> int(0) [2]=> string(9) "502857731" } // 我们这里将数组值的顺序调整下 php > $a = ["ZfQW5yH1IkBmn13smeEnWQ==","502857731",0]; php > sort($a,0); php > var_dump($a); array(3) { [0]=> int(0) [1]=> string(9) "502857731" [2]=> string(24) "ZfQW5yH1IkBmn13smeEnWQ==" }
问题出现了,两次排序竟然顺序是不一样的!
从stackoverflow上找到了答案
【Numeric sort an array with mixed types values】
重点就是:
Be careful when sorting arrays with mixed types values because sort() can produce unpredictable results.
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/23335.html
摘要:发布时最大的变动是对象处理方式。这很容易被误解为引用,但是存储器的引用与引用是完全不同的概念。使用引用是一件不好的事情,除了引用本身不好,并且还会使性能下降这个事实外,使用引用这种方式会使得代码难以维护。 showImg(https://segmentfault.com/img/remote/1460000014082570); 去年我参加了很多次会议,其中八次会议里我进行了相关发言,...
摘要:良好的排序算法具有进行最少的比较和交换的特征。冒泡排序是一个基于比较的排序算法,被认为是效率最低的排序算法之一。现在让我们使用实现冒泡排序算法。插入排序到目前为止,我们已经看到了两种基于比较的排序算法。 预警 本文适合对于排序算法不太了解的新手同学观看,大佬直接忽略即可。因为考虑到连贯性,所以篇幅较长。老铁们看完需要大概一个小时,但是从入门到完全理解可能需要10个小时(哈哈哈,以我自己...
摘要:继周一发布的面试常考内容之和后,这是第二篇,感谢你的支持和阅读。预告面试常考内容之和将于本周五更新。以上内容摘自程序员面试笔试宝典书籍,该书已在天猫京东当当等电商平台销售。 你好,是我琉忆。继周一(2019.2-18)发布的PHP面试常考内容之Memcache和Redis(1)后,这是第二篇,感谢你的支持和阅读。本周(2019.2-18至2-22)的文章内容点为以下几点,更新时间为每周...
摘要:继周一发布的面试常考内容之和后,这是第二篇,感谢你的支持和阅读。预告面试常考内容之和将于本周五更新。以上内容摘自程序员面试笔试宝典书籍,该书已在天猫京东当当等电商平台销售。 你好,是我琉忆。继周一(2019.2-18)发布的PHP面试常考内容之Memcache和Redis(1)后,这是第二篇,感谢你的支持和阅读。本周(2019.2-18至2-22)的文章内容点为以下几点,更新时间为每周...
阅读 685·2021-11-17 09:33
阅读 3717·2021-09-01 10:46
阅读 1721·2019-08-30 11:02
阅读 3248·2019-08-29 15:05
阅读 1375·2019-08-26 11:39
阅读 2229·2019-08-23 17:04
阅读 1947·2019-08-23 15:43
阅读 1342·2019-08-23 14:12