Menu
Coddy logo textTech

'array_slice' ile Kesit Alma

Coddy'nin PHP Journey'sinin Mantık ve Akış bölümünün bir parçası. Ders 16 / 68.

array_slice() fonksiyonu, orijinal diziyi değiştirmeden bir dizinin belirli bir bölümünü çıkarmanıza olanak tanır. Kaynak diziyi değiştiren array_pop() veya array_shift() gibi fonksiyonların aksine, array_slice() yalnızca belirttiğiniz öğeleri içeren yeni bir dizi oluşturur.

İşlev iki ana parametre alır: offset (başlangıç konumu) ve length (kaç öğenin çıkarılacağı):

<?php
$scores = [95, 87, 92, 78, 85, 90, 88];
$topThree = array_slice($scores, 0, 3);
print_r($topThree);  // Outputs: Array ( [0] => 95 [1] => 87 [2] => 92 )
print_r($scores);    // Orijinal dizi değişmedi
?>

offset parametresi PHP’ye ayıklamaya nereden başlayacağını söyler (0, ilk öğe anlamına gelir); length parametresi ise kaç öğe alınacağını belirtir. Dizinin sonundan başlayarak saymak için offset için negatif değerler de kullanabilirsiniz.

Bu fonksiyon, büyük bir listeden yalnızca ilk birkaç öğeyi görüntülemek veya işleme için belirli bir öğe aralığını çıkarmak gibi verilerin bir alt kümesiyle çalışmanız gerektiğinde, orijinal verilerinizi olduğu gibi koruyarak özellikle yararlı olur.

challenge icon

Görev

Kolay

Üç girdi alacaksınız: JSON biçiminde ürün fiyatlarından oluşan bir dizi, başlangıç konumu (offset) ve çıkarılacak öğe sayısı (length). Her üç girdiyi okuyun, JSON dizesini bir diziye dönüştürün, dizinin belirtilen bölümünü çıkarmak için array_slice() kullanın ve çıkarılan parçayı print_r() kullanarak yazdırın.

Girdi biçimi: Üç satırdır - ilk satır sayılardan oluşan bir JSON dizisi içerir (örnek: [29.99,15.50,42.00,8.75,33.25]), ikinci satır offset'i (başlangıç konumu), üçüncü satır ise uzunluğu (çıkarılacak öğe sayısı) içerir.

Beklenen çıktı: print_r() kullanılarak görüntülenen dizinin çıkarılan bölümü

Kendin dene

<?php
// Fiyatların JSON dizisini oku
$json_input = fgets(STDIN);
$prices = (array)json_decode($json_input, true);

// Ofseti (başlangıç pozisyonunu) oku
$offset = intval(fgets(STDIN));

// Uzunluğu (çıkarılacak öğe sayısını) oku
$length = intval(fgets(STDIN));

// YAPILACAK: Dilimi çıkarmak ve çıktı olarak vermek için kodunuzu aşağıya yazın

?>
quiz iconKendini test et

Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.

Mantık ve Akış bölümündeki tüm dersler

Kendi başına pratik yap: Online PHP derleyicisi