2010-08-27 13 views
15

Bir diziPHP: Dizim nasıl kesilir?

Array 
(
    [0] => 0 
    [1] => 1 
    [2] => 2 
    [3] => 3 
    [4] => 4 
    [5] => 5 
) 

nasıl son 2 hücreleri çıkarmak ve daha kısa yapabilir var?

Array 
(
    [0] => 0 
    [1] => 1 
    [2] => 2 
) 

Teşekkür

+0

son 3 hücreleri olmasın? Veya senin örneğinin '3 'endeksine gitmesi mi gerekiyor? – ircmaxell

+2

Bazı temel aritmetik burada eklenmiyor – stillstanding

cevap

37

sadece ilk üç element isteseydi array_slice()

Yani atın:

$array = array_slice($array, 0, 3); 

son üç unsur ama isteseydik:

$array = array_slice($array, 0, -3); 

İkinci parametre ise başlangıç ​​noktası (0 dizinin başlangıcından başlamak anlamına gelir).

Üçüncü parametre, elde edilen dizinin uzunluğudur. belgelerden; length verildi ve pozitif olduğu

, daha sonra sırası içinde birçok unsurları olacaktır. length verilir ve negatif ise, dizi dizinin sonunda birçok öğeyi durdurur. Belirtilmediği takdirde, dizi yukarı array sonuna kadar offset her şeyi olacak .

7

Dilim bunu. Bıçak ile. Bununla Aslında

:

array_slice($array, 0, -3); 

son unsurları keserek geliyordu varsayarsak.

4

kullanımı array_splice():

$new = array_splice($old, 0, 3); 

Yukarıdaki satır $old ilk üç elemanları döndürür.

Önemli:array_splice(), özgün diziyi değiştirir.

+0

'array_splice' ile dizinin kendisini değiştirirsiniz, yani $ new === $ old'. – Gumbo

1

Kullanım array_splice olarak: özellikle kesilmesiyle ilgili birinde

$array = array(0,1,2,3,4,5); 
array_splice($array,0,3); 
İlgili konular