Câu hỏi phỏng vấn PHP
Câu hỏi

Trong PHP từ khoá yield để làm gì?

Câu trả lời

Trong PHP, từ khóa yield được sử dụng trong việc tạo ra các generator, một loại iterator đặc biệt cho phép bạn duyệt qua một tập hợp dữ liệu mà không cần tạo ra và lưu trữ toàn bộ tập hợp đó trong bộ nhớ. Điều này làm cho việc xử lý các tập dữ liệu lớn trở nên hiệu quả hơn về mặt bộ nhớ và thời gian xử lý.

Khi một hàm chứa yield được gọi, nó trả về một đối tượng Generator. Mỗi lần yield được thực thi, nó "tạm dừng" hàm và trả về một giá trị cho vòng lặp foreach đang gọi nó. Khi vòng lặp tiếp tục, hàm tiếp tục thực thi từ điểm nó đã tạm dừng cho đến khi gặp yield tiếp theo hoặc kết thúc hàm.

Ví dụ:

php Copy
function getFibonacci() {
    $i = 0;
    $k = 1; // Giá trị fibonacci đầu tiên
    yield $k;
    while (true) {
        $k = $i + $k;
        $i = $k - $i;
        yield $k;
    }
}

$y = 0;
foreach (getFibonacci() as $fibonacci) {
    echo $fibonacci . "\n";
    $y++;
    if ($y > 30) break; // Ngăn chặn vòng lặp vô hạn
}

Trong v...

middle

middle

Gợi ý câu hỏi phỏng vấn

senior

Làm cách nào để có thể đặt thời gian thực thi vô hạn cho tập lệnh PHP?

middle

Từ khóa var trong PHP để làm gì?

middle

Có lý do gì để sử dụng strcmp() để so sánh string trong PHP không?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào