以前看到一道面試題,大概意思是儘量的寫出來給二維數組按照某個字段值排序的功能;好比說是下面數組結構:php
$users = [ ['name' => 'Alice', 'age' => 15], ['name' => 'Blob', 'age' => 19], ['name' => 'James', 'age' => 14], ];
按照年齡對用戶進行排序;你們第一眼感受應該是用循環,而後用冒泡排序之類的去計算;但這一道題顯然不是去考察大衆都能想到的; 它應該是想考一下求職者對php基本函數的用法,也就是 sort ksort usort 之類的函數;面試
簡單寫一下:數組
usort($users, function($prev, $next){ return $prev['age'] > $next['age']; });
感興趣的能夠執行下看結果;函數
php語法雖然讓人很難受,但不得不說不少函數的功能確實很細節,因此你們在看到或者工做中遇到相似的需求,能夠先嚐試下php默認函數能不能解決,這樣你的代碼質量也會很高,這將是提高本身的一個很好途徑。post
本文首發地址: https://www.phpdish.com/posts/76code