एरेहरू PHP मा एक परिष्कृत डेटा संरचना हो जसले विकासकर्ताहरूलाई एकल चरमा धेरै मानहरू भण्डारण र व्यवस्थापन गर्न सक्षम बनाउँछ। PHP ले आधारभूत एरे अपरेसनहरूको अतिरिक्त एरेहरू क्रमबद्ध र हेरफेर गर्ने विधिहरूको संग्रह समावेश गर्दछ। यस पोष्टमा, हामी PHP 8 मा उपलब्ध सबैभन्दा सामान्य PHP एरे क्रमबद्ध प्रकार्यहरू हेर्नेछौं।
क्रमबद्ध कार्यहरू
PHP ले एरे क्रमबद्ध गर्नका लागि धेरै बिल्ट-इन प्रकार्यहरू प्रदान गर्दछ, जसमा:
क्रमबद्ध ()
यो भाग्य() विधिले एरे सदस्यहरूलाई बढ्दो क्रममा व्यवस्थित गर्दछ। यदि array मा एक मात्र तत्व छ भने, यसले उही एरे फर्काउँछ। यो सफल हुँदा सत्य फर्किन्छ। यो अन्य सबै परिस्थितिहरूमा गलत फर्काउँछ।
$numbers = array(4, 8, 12, 16, 20);
sort($numbers);
print_r($numbers); // [4, 8, 12, 16, 20]
rsort()
यो rsort()
प्रकार्य को उल्टो छ sort()
समारोह। यसले एर्रेका तत्वहरूलाई घट्दो क्रममा क्रमबद्ध गर्छ।
Copy code$numbers = array(4, 16, 12, 20, 11);
rsort($numbers);
print_r($numbers); // [20, 16, 12, 11, 4]
asort()
यो वर्गीकरण() विधिले associative array को सदस्यहरूलाई बढ्दो क्रममा क्रमबद्ध गर्न मानहरू प्रयोग गर्दछ।
$fruits = array("apple" => "1", "pineapple" => "2", "orange" => "3");
asort($fruits);
print_r($fruits); // ["apple" => "1", "orange" => "3", "pineapple" => "2"]
ksort()
यो ksort()
प्रकार्यले एसोसिएटिभ एरेका तत्वहरूलाई बढ्दो क्रममा क्रमबद्ध गर्दछ कुञ्जीहरू.
$fruits = array("apple" => "1", "pineapple" => "2", "orange" => "3");
ksort($fruits);
print_r($fruits); // ["apple" => "1", "orange" => "3", "pineapple" => "2"]
arsort()
यो arsort()
प्रकार्यले मान अनुसार घट्दो क्रममा सहयोगी एरेका तत्वहरूलाई क्रमबद्ध गर्छ।
$fruits = array("apple" => "1", "pineapple" => "2", "grapefruit" => "1");
arsort($fruits);
print_r($fruits); // ["grapefruit" => "1", "pineapple" => "2", "apple" => "1"]
अन्य एरे क्रमबद्ध प्रकार्यहरू
यसका अतिरिक्त arsort() प्रकार्य, PHP ले एरेहरू क्रमबद्ध गर्नका लागि धेरै अन्य प्रकार्यहरू पनि प्रदान गर्दछ, जस्तै:
- krsort(): यसको कुञ्जी अनुसार घट्दो क्रममा एक सहयोगी एरेलाई क्रमबद्ध गर्दछ
- प्रयोग गर्नुहोस्(): प्रयोगकर्ता-परिभाषित तुलना प्रकार्य प्रयोग गरेर एरे क्रमबद्ध गर्दछ
- uasort(): प्रयोगकर्ता-परिभाषित तुलना प्रकार्य प्रयोग गरेर एक सहयोगी एरे क्रमबद्ध गर्दछ, कुञ्जी-मान जोडीहरू संरक्षण गर्दै
- uksort(): एक सहयोगी एरे क्रमबद्ध गर्दछ
प्रश्नोत्तर
प्रश्न: arrays को लागि PHP मा "क्रमबद्ध" र "rsort" प्रकार्यहरू बीच के भिन्नता छ?
A: "सर्ट" प्रकार्यले एर्रेका तत्वहरूलाई बढ्दो क्रममा क्रमबद्ध गर्दछ, जबकि "rsort" प्रकार्यले घट्दो क्रममा तत्वहरूलाई क्रमबद्ध गर्दछ।
Q: कसरी "asort" प्रकार्य "sort" प्रकार्य भन्दा फरक छ?
A: "asort" प्रकार्यले कुञ्जी-मान सम्बन्धलाई सुरक्षित राख्दा तिनीहरूको मानहरूमा निर्भर एरे तत्वहरूलाई क्रमबद्ध गर्दछ। अर्कोतर्फ, "क्रमबद्ध" प्रकार्यले वस्तुहरूलाई तिनीहरूको मानहरूको आधारमा क्रमबद्ध गर्दछ, तर यसले कुञ्जीहरूलाई पुन: क्रमबद्ध गर्दछ र कुञ्जीहरू र मानहरू बीचको सम्बन्धलाई बाधा पुर्याउन सक्छ।
प्रश्न: के तपाइँ PHP मा "ksort" प्रकार्य व्याख्या गर्न सक्नुहुन्छ?
A: "ksort" प्रकार्यले array सदस्यहरूलाई तिनीहरूको कुञ्जीहरूमा निर्भर गर्दछ। वस्तुहरू कुञ्जी मानहरूमा आधारित बढ्दो क्रममा पुन: क्रमबद्ध छन्।
प्रश्न: केस-संवेदनशील तरिकामा एरे क्रमबद्ध गर्ने तरिका के छ?
A: हो, तपाईले SORT_FLAG_CASE फ्ल्यागको साथ "सर्ट" वा "एसोर्ट" प्रकार्य प्रयोग गर्न सक्नुहुन्छ। उदाहरणका लागि: "sort($array, SORT_FLAG_CASE);"
प्रश्न: के तपाइँ वस्तुहरूको एरे क्रमबद्ध गर्न "usort" प्रकार्य प्रयोग गर्न सक्नुहुन्छ?
A: हो, वस्तुहरू तुलना गर्ने कलब्याक प्रकार्य आपूर्ति गरेर, वस्तुहरूको एर्रे क्रमबद्ध गर्न "usort" विधि प्रयोग गर्न सकिन्छ। कम्पोनेन्टहरूको क्रम पहिचान गर्न, कलब्याक प्रकार्यले नकारात्मक, शून्य, वा सकारात्मक पूर्णांक फर्काउनु पर्छ।
प्रश्न: के तपाइँ कुञ्जीहरू परिवर्तन नगरिकन मानद्वारा सहयोगी एरे क्रमबद्ध गर्न सक्नुहुन्छ?
A: हो, तपाईले "asort" प्रकार्य प्रयोग गर्न सक्नुहुन्छ कुञ्जीहरू परिवर्तन नगरिकन मानद्वारा सहयोगी एरे क्रमबद्ध गर्न।
व्यायाम गर्नुहोस्:
- तपाईं कसरी आरोही क्रममा एरे क्रमबद्ध गर्न सक्नुहुन्छ?
- तपाइँ कसरी घट्दो क्रममा एरे क्रमबद्ध गर्न सक्नुहुन्छ?
- तपाइँ कसरी एक कुञ्जी को मान द्वारा सहयोगी array को array लाई क्रमबद्ध गर्न सक्नुहुन्छ?
- तपाइँ कसरी वस्तुहरूको एरेलाई तिनीहरूको गुणहरू मध्ये एकद्वारा क्रमबद्ध गर्न सक्नुहुन्छ?
- अक्षरहरू, केस-संवेदनशील रूपमा स्ट्रिङहरूको एर्रे क्रमबद्ध गर्ने स्क्रिप्ट लेख्नुहोस्।
जवाफहरू:
- क्रमबद्ध ($ array);
- rsort ($ array);
- usort($array, function($a, $b) { फिर्ता गर्नुहोस् $a['key'] <=> $b['key']; });
- usort($array, function($a, $b) { फिर्ता गर्नुहोस् $a->property <=> $b->property; });
- usort($array, 'strcasecmp');
आधिकारिक PHP arrays प्रकार्यहरू सन्दर्भ.