php sort 不同类型导致的问题
生活随笔
收集整理的這篇文章主要介紹了
php sort 不同类型导致的问题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
今天和客戶端進行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.
總結
以上是生活随笔為你收集整理的php sort 不同类型导致的问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sql like 多条件
- 下一篇: UVA 11995 I Can Gues