मुझे लगता है कि मैं सही ढंग से समझ नहीं सकता कि array_splice को कैसे काम करना चाहिए। मेरी समझ यह है कि पहला पैराम आपकी प्रारंभिक सरणी है, दूसरा पैरामेट शुरू करने वाला तत्व है, और तीसरा पैरा लंबाई, या प्रतिस्थापित करने के लिए तत्वों की संख्या है। , मैं नहीं करना चाहताphp में array_splice का उपयोग करके मैं एक सरणी सदस्य को कैसे हटा सकता हूं?
Array (
[0] => Array ([TypeFlag] => S [qty] => 1 [denom] => 25 [certMessage] => [totalPrice] => 25)
[1] => Array ([TypeFlag] => C [qty] => 2 [denom] => 25 [certMessage] => [totalPrice] => 50)
[2] => Array ([TypeFlag] => V [qty] => 2 [denom] => 25 [certMessage] => test [totalPrice] => 50))
मैं पूरी तरह से दूसरा तत्व (TypeFlag = सी आदि 1 के सूचकांक के साथ सरणी) को निकालना चाहते:
तो, मैं (print_r उत्पादन) इस सरणी है इसे किसी भी चीज़ से बदलें; बस शेष दो तत्वों के साथ सरणी वापस करने के लिए। मैं इस की कोशिश की है (जहां गाड़ी सरणी नाम है):
$cart = array_splice($cart, 1,1);
लेकिन क्या मैं के साथ अंत यह जब एक print_r कर रही है:
Array ([0] => Array ([TypeFlag] => C [qty] => 2 [denom] => 25 [certMessage] => [totalPrice] => 50))
तो ऐसा लगता है 0 और 2 को हटाने जा करने के लिए , और शेष के रूप में 1 छोड़कर। मैं क्या गलत कर रहा हूं?
तो अगर मैं कर रहा हूँ इसे एक फ़ंक्शन के अंदर कर रहा है और चयनित मूल्य से सरणी को वापस करने की आवश्यकता है, क्या मुझे पहले अस्थायी मान (यानी अस्थायी मान) को सौदा करने की आवश्यकता है $ cartTemp = $ कार्ट), फिर splice करें, फिर सरणी को $ कार्ट में पुन: असाइन करें? या मैं सिर्फ array_splice ($ कार्ट, 1, 1) करता हूं, फिर $ कार्ट वापस कर देता हूं? कभी भी मन नहीं - बस कोशिश की और यह काम करता है अगर मैं सिर्फ array_splice करता हूं और फिर $ कार्ट वापस करता हूं। धन्यवाद। – EmmyS
नहीं। इसे एक अस्थायी रूप से असाइन करने की आवश्यकता नहीं है। बस फंक्शन को कॉल करें, इसे सरणी पास कर दें और फ़ंक्शन सरणी को बदल देगा। – codaddict
अनसेट को अनुक्रमित सरणी की आवश्यकता होती है, यदि सरणी में कोई इंडेक्स अनसेट नहीं है तो उन्हें स्वयं जोड़ता है और यदि आप इंडेक्स के बिना अपना संग्रह चाहते हैं तो यह सबकुछ खराब हो जाता है .. – CookieMonster