बहुआयामी सरणियों की कस्टम सॉर्टिंग
बहुआयामी सरणियों को सॉर्ट करना प्रोग्रामिंग में एक सामान्य कार्य हो सकता है। यह आलेख दर्शाता है कि PHP usort() फ़ंक्शन का उपयोग करके किसी विशिष्ट कुंजी के आधार पर ऐसी सरणी को कैसे क्रमबद्ध किया जाए।
कार्य को समझना
निम्नलिखित बहुआयामी सरणी पर विचार करें जहां प्रत्येक तत्व एक रिकॉर्ड का प्रतिनिधित्व करता है:
Array (
[0] => Array
(
[iid] => 1
[invitee] => 174
[nid] => 324343
[showtime] => 2010-05-09 15:15:00
[location] => 13
[status] => 1
[created] => 2010-05-09 15:05:00
[updated] => 2010-05-09 16:24:00
)
[1] => Array
(
[iid] => 1
[invitee] => 220
[nid] => 21232
[showtime] => 2010-05-09 15:15:00
[location] => 12
[status] => 0
[created] => 2010-05-10 18:11:00
[updated] => 2010-05-10 18:11:00
))
एक कुंजी द्वारा क्रमबद्ध करना
इस सरणी को "स्थिति" कुंजी द्वारा क्रमबद्ध करने के लिए, हमें एक तुलना फ़ंक्शन को परिभाषित करने की आवश्यकता है जो तत्वों के क्रम को निर्धारित करता है।
function cmp($a, $b) {
if ($a['status'] == $b['status']) {
return 0;
}
return ($a['status'] यह फ़ंक्शन दो तत्वों के "स्थिति" मानों की तुलना करता है। यदि मान बराबर हैं, तो यह 0 लौटाता है। यदि पहले तत्व का "स्थिति" मान दूसरे से कम है, तो यह -1 लौटाता है। अन्यथा, यह 1 लौटाता है। &&&]
usort($array, "cmp");यह "स्थिति" के आधार पर सरणी को आरोही क्रम में क्रमबद्ध करेगा चाबी। संशोधित सरणी में उसके तत्वों को तदनुसार पुनर्व्यवस्थित किया जाएगा।
तुलना को अनुकूलित करना
usort($array, "cmp");
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3