Menu
CoddyTech

Mengambil bagian dengan 'array_slice'

Termasuk bagian Logika dan Alur dalam perjalanan PHP di Coddy. Pelajaran 16 dari 68.

Fungsi array_slice() memungkinkan kamu mengambil sebagian dari array tanpa mengubah array asli. Tidak seperti fungsi seperti array_pop() atau array_shift() yang mengubah array sumber, array_slice() membuat array baru yang hanya berisi elemen yang kamu tentukan.

Fungsi ini menerima dua parameter utama: offset (posisi awal) dan length (jumlah elemen yang diekstrak):

<?php
$scores = [95, 87, 92, 78, 85, 90, 88];
$topThree = array_slice($scores, 0, 3);
print_r($topThree);  // Output: Array ( [0] => 95 [1] => 87 [2] => 92 )
print_r($scores);    // array asli tidak berubah
?>

Parameter offset memberi tahu PHP dari mana harus mulai mengekstrak (0 berarti elemen pertama), sedangkan parameter length menentukan berapa banyak elemen yang diambil. Kamu juga dapat menggunakan nilai negatif untuk offset agar mulai menghitung dari akhir array.

Fungsi ini sangat berguna saat kamu perlu bekerja dengan sebagian data, seperti menampilkan hanya beberapa item pertama dari list yang besar atau mengambil rentang elemen tertentu untuk diproses, sambil tetap menjaga data aslimu.

challenge icon

Tantangan

Mudah

Kamu akan menerima tiga input: array harga produk dalam format JSON, posisi awal (offset), dan jumlah item yang akan diekstrak (length). Baca ketiga input, ubah string JSON menjadi array, gunakan array_slice() untuk mengekstrak bagian array yang ditentukan, lalu cetak potongan yang diekstrak menggunakan print_r().

Format input: Tiga baris, baris pertama berisi array angka JSON (contoh: [29.99,15.50,42.00,8.75,33.25]), baris kedua berisi offset (posisi awal), baris ketiga berisi length (jumlah elemen yang akan diekstrak)

Output yang diharapkan: Bagian array yang diekstrak, ditampilkan menggunakan print_r()

Coba sendiri

<?php
// Baca array JSON berisi harga
$json_input = fgets(STDIN);
$prices = (array)json_decode($json_input, true);

// Baca offset (posisi awal)
$offset = intval(fgets(STDIN));

// Baca length (jumlah elemen yang akan diambil)
$length = intval(fgets(STDIN));

// TODO: Tulis kodemu di bawah ini untuk mengambil bagian array dan menampilkannya sebagai output

?>
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Logika dan Alur

Latihan sendiri: Compiler PHP online