2010-08-28 20 views

उत्तर

39

$n आपके द्वारा अंत में इच्छित वस्तुओं की संख्या के बराबर है।

$arr = array_slice($old_arr, -$n); 
+1

धन्यवाद! मैं बस उस समारोह को नहीं मिला। – Dataflashsabot

0

आप http://us2.php.net/array_slice का उपयोग कर सकते हैं।

$new = array_slice($old, $n); 

हालांकि, $n टुकड़ा शुरू करने के लिए तो यह गणना करने के लिए, आप सरणी की लंबाई से इस घटाना करने की आवश्यकता होगी ऑफसेट, है: $n = count($old) - $target_size

+4

या आपके द्वारा लिंक किए गए दस्तावेज़ों को पढ़ें और महसूस करें कि नकारात्मक ऑफसेट सरणी के अंत में शुरू होते हैं। 'अगर ऑफसेट गैर-ऋणात्मक है, अनुक्रम सरणी में उस ऑफसेट पर शुरू होगा। अगर ऑफसेट नकारात्मक है, तो अनुक्रम सरणी के अंत से बहुत दूर शुरू होगा। ' – Femaref

3

आप array_slice उपयोग कर सकते हैं:

$arr = array_slice($old_arr, -$n, $n, true); 

सरणी सूचकांक आप को सार्थक कर रहे हैं, तो याद रखें कि array_slice रीसेट और संख्यात्मक सरणी सूचकांक को पुन: व्यवस्थित होगा। इससे बचने के लिए आपको preserve_keys ध्वज (चौथा पैरामीटर) सत्य पर सेट करना होगा।

संबंधित मुद्दे