Menu
CoddyTech

Truy cập phần tử trong mảng 2 chiều

Thuộc phần Logic và luồng chương trình trong hành trình PHP của Coddy. Bài học 28 trên 68.

Giờ bạn đã biết cách tạo mảng 2D, bước tiếp theo là học cách lấy các giá trị cụ thể từ mảng. Để truy cập phần tử trong mảng 2D, bạn cần hai chỉ số: chỉ số thứ nhất cho hàng và chỉ số thứ hai cho cột, theo cú pháp $array[row][column].

Đây là cách bạn truy cập một phần tử cụ thể trong mảng 2D:

<?php
$products = [
    ["Laptop", 999.99],
    ["Mouse", 25.50],
    ["Keyboard", 75.00]
];

// Truy cập giá của sản phẩm đầu tiên (Laptop)
echo $products[0][1]; // In ra: 999.99

// Truy cập tên của sản phẩm thứ hai (Mouse)
echo $products[1][0]; // In ra: Mouse
?>

Chỉ số đầu tiên [0] chọn hàng đầu tiên (mảng laptop), còn chỉ số thứ hai [1] chọn phần tử thứ hai trong hàng đó (giá). Hãy hình dung bạn đang tìm đến một ô cụ thể trong bảng tính bằng cách chỉ định cả hàng lẫn cột.

Hệ thống đánh chỉ số kép này giúp bạn xác định chính xác phần dữ liệu cần lấy từ cấu trúc dạng lưới, khiến mảng 2D trở nên lý tưởng để sắp xếp thông tin liên quan theo hàng và cột.

challenge icon

Thử thách

Dễ

Bạn sẽ nhận ba đầu vào: một mảng 2D chứa thông tin học sinh ở định dạng JSON, một chỉ số hàng và một chỉ số cột. Hãy đọc cả ba đầu vào, chuyển chuỗi JSON thành mảng 2D, truy cập phần tử tại chỉ số hàng và chỉ số cột đã chỉ định, rồi in phần tử đó ra.

Mảng 2D biểu diễn danh sách học sinh, trong đó mỗi mảng bên trong chứa: [student_name, age, grade]

Định dạng đầu vào:

  • Dòng đầu tiên: Một mảng JSON chứa thông tin học sinh (ví dụ: [["Alice",16,85],["Bob",17,92],["Charlie",16,78]])
  • Dòng thứ hai: Chỉ số hàng (số nguyên)
  • Dòng thứ ba: Chỉ số cột (số nguyên)

Đầu ra mong đợi: Phần tử tại vị trí hàng và cột đã chỉ định

Tự làm thử

<?php
// Đọc mảng JSON
$jsonInput = trim(fgets(STDIN));
$students = (array)json_decode($jsonInput, true);

// Đọc chỉ số hàng
$rowIndex = intval(fgets(STDIN));

// Đọc chỉ số cột
$colIndex = intval(fgets(STDIN));

// TODO: Viết code bên dưới để truy cập phần tử tại hàng và cột đã chỉ định


// In kết quả ra
echo $element;
?>
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Logic và luồng chương trình

Tự luyện tập: Trình biên dịch PHP online