Trong khi quá trình di chuyển từ phiên bản 2.x sang 3.x và giữa các phiên bản khác nhau, 3.x chỉ đơn giản là ghi đè lên các tệp trong thư mục / system và thay đổi tên của một số tệp, từ phiên bản 3 sang phiên bản 4, một cấu trúc hoàn toàn mới là bắt buộc để áp dụng và viết lại tất cả các danh mục được sử dụng trong đó để thích ứng với môi trường chung mới.
Kể từ khi ra mắt phiên bản ổn định chính của CodeIgniter 3, phiên bản CodeIgniter 4, chính xác là phải mất gần 5 năm, 1767 ngày.
Trong thời gian đó có rất nhiều sửa đổi trên mạng, tám phiên bản PHP đã được tung ra, nhiều FRAMEWORK PHP khác nhau đã xuất hiện và những framework đã có mặt trên thị trường đang được cập nhật. Trong khi đó, CodeIgniter là một trong những nền tảng phức tạp nhất, đang từ một trong những framework PHP phổ biến nhất để thay đổi thành một trong những nền tảng lỗi thời nhất.
Sự khác biệt giữa các phiên bản
CodeIgniter 4 cực kỳ khác biệt hoàn toàn so với ba và dưới đây, bạn sẽ thấy liên quan đến hầu hết các biến thể giữa chúng.
1- Hỗ trợ cho các phiên bản PHP
Để sử dụng CodeIgniter 4, phiên bản PHP tối thiểu cần có là PHP 7.2, trong khi với CodeIgniter 3, bạn có thể sử dụng từ phiên bản 5.6 (đã ngừng hoạt động hoàn toàn).
2- Tổ chức thư mục
Cấu trúc tệp là khác nhau. CodeIgniter 4 có cấu trúc được tổ chức trong năm thư mục: / app, / system, / public, / writeable, / tests. trong khi CodeIgniter ba được tổ chức thành hai thư mục: / applicationationand / system`.
3- Sử dụng không gian tên namespace
CodeIgniter 4 được viết hoàn toàn bằng PHP 7 và sử dụng không gian tên namespace, trong khi CodeIgniter 3 không sử dụng không gian tên.
4- Tự tải
CodeIgniter 4 bao gồm một phương pháp tự động tải kinh tế hơn nhiều và một trong những yếu tố hỗ trợ là việc sử dụng không gian tên. Trong khi trong CodeIgniter 3, cần phải tập hợp thủ công hầu hết các tệp sẽ được tải.
5- Sử dụng các thực thể
CodeIgniter 4 có hỗ trợ gốc cho việc sử dụng các Thực thể (thực thể) hỗ trợ cấu trúc thông tin một phần của ứng dụng liên kết, đại diện cho các cột hiện tại trong bảng. CodeIgniter 3 không có tính năng này và bất kỳ tổ chức nào yêu cầu sử dụng nó đều yêu cầu sử dụng thư viện của bên thứ ba và xây dựng các thay đổi đối với việc truyền tệp để hỗ trợ nó.
6- Hiệu suất
CodeIgniter 4 dành cho PHP 7 như một cấu hình tối thiểu trên máy chủ và nhiều thứ khác nữa, có hiệu suất cao hơn CodeIgniter 3.
7- Thư viện hỗ trợ
Không giống như CodeIgniter 3, trong quá trình làm lại này, việc sử dụng các thư viện nguyên khối trong xu hướng PEAR gần như bằng không.
8- Cài đặt
Với CodeIgniter 4, các cài đặt ban đầu để ứng dụng của bạn bắt đầu chạy theo 1 cách thức riêng, trong khi trong CodeIgniter 3 cần phải thực hiện nhiều cấu hình khác nhau.
9- Hỗ trợ riêng cho các tệp .env
CodeIgniter 4 có hỗ trợ gốc cho các tệp .env, cho phép tối ưu hóa liên kết các cài đặt của các môi trường khác nhau ở bất kỳ nơi nào nó sẽ chạy (sản xuất, thử nghiệm, phát triển). Tính năng này không tồn tại nguyên bản trong CodeIgniter 3.
10- Tương thích giữa các phiên bản
CodeIgniter 4 không tương thích ngược, rằng phương pháp thay đổi ứng dụng từ phiên bản 3 sang phiên bản 4 sẽ yêu cầu thao tác rất nhiều, tuy nhiên, nó không phức tạp lắm.
Trong khi quá trình di chuyển từ phiên bản 2.x sang 3.x và giữa các phiên bản khác nhau, 3.x chỉ đơn giản là ghi đè lên các tệp trong thư mục / system và thay đổi tên của một số tệp, từ phiên bản 3 sang phiên bản 4, một cấu trúc hoàn toàn mới là bắt buộc để áp dụng và viết lại tất cả các danh mục được sử dụng trong đó để thích ứng với môi trường chung mới.