Generics trong PHP
.png)
PHP được biết đến là 1 ngôn ngữ đơn giản, biến trong PHP đều bắt đầu bằng $ , không bắt buộc phải khai báo rõ ràng kiểu dữ liệu, nhưng đó lại chính là một trong những thứ gây ra lỗi nhiều nhất trong PHP. Dưới đây là một ví dụ điển hình. Một số developer nghĩ rằng: cái function đó do tôi code thì tôi control được, tôi sẽ truyền đúng kiểu dữ liệu, tôi sẽ ép kiểu trước khi truyền vào function. Nhưng DỰ ÁN CÓ NHIỀU NGƯỜI THAM GIA, ĐÂU PHẢI CHỈ CÓ MỘT NGƯỜI. VÀ CHÚNG TA CŨNG KHÔNG ĐẢM BẢO RẰNG DỮ LIỆU TRUYỀN VÀO LÚC NÀO CŨNG HỢP LỆ Quay lại ví dụ, chúng ta có thể khai báo kiểu dữ liệu cho các biến của function để hạn chế vấn đề trên. Lưu ý: Để validate kiểu dữ liệu chúng ta phải khai báo declare(strict_types=1); còn không thì PHP sẽ chỉ dùng kiểu dữ liệu khai báo để tự động ép kiểu mà thôi. Nhưng nếu chúng ta khai báo kiểu dữ liệu cho array thì sao? Làm sao để đảm bảo các phần tử trong array truyền vào là int hay string? Trong PHP không có khái niệm generics như các ngôn ngữ khác ví d...