Một trong PHP Framework được ưa chuộng nhất hiện nay đó là CakePHP. Nó được biết đến với mã nguồn mở (OpenSource) và viết bằng ngôn ngữ PHP. Với những tính năng ưu việt các lập trình viên dễ dàng tạo website trong thời gian ngắn nhất. Hãy cùng tìm hiểu CakePHP là gì và các bước cài đặt CakePHP Framework ra sao nhé!
CakePHP là gì?
CakePHP được phát hành lần đầu tiên vào tháng 4 năm 2015 bởi lập trình viên người Ba Lan tên là Michal Tatarynowicz.
Nó được phát triển dựa theo mô hình MVC (Model-View-Controller) tương tự như Codeigniter Framework hay Laravel Framework.
Web Developer hoàn toàn có thể xây dựng trang web nhanh chóng, linh hoạt và tiết kiệm thời gian.
Hướng dẫn cài đặt CakePHP Framework
1. Để download CakePHP phiên bản mới nhất trên Github bạn truy cập tại đây.
Hoặc tải 3.8.1 tại https://github.com/cakephp/cakephp/releases/tag/3.8.1
Đối với bản 4.0 thì nó sẽ yêu cầu PHP7
2. Tiếp theo bạn cần tạo Localhost trên máy tính bằng XAMPP (Xem hướng dẫn cài đặt XAMPP tại đây).
3. Sau khi tải CakePHP về bạn copy thả vào thư mục htdocs (C:xampphtdocs)
Giải nén và đổi tên thành cakephp
4. Truy cập vào đường dẫn localhost/cakephp trên trình duyệt
Nếu xuất hiện lỗi Fatal error: You must enable the intl extension to use CakePHP. in C:xampphtdocscakephpconfigrequirements.php on line 31
Hoặc xuất hiện lỗi Could not load configuration file: C:xampphtdocscakephpconfigapp.php
Thì bạn sẽ mở file app.default.php (Nằm tại C:xampphtdocscakephpconfig) sao chép (copy) toàn bộ file và lưu lại (save) với tên là app.php cũng nằm trong thư mục cakephpconfig.
Bạn sẽ làm như sau:
1. Truy cập C:xamppphp mở file php.ini bằng Notepad++
2. Thay đoạn ;extension=php_intl.dll thành extension=php_intl.dll hoặc nếu không có thì tìm một tới các dòng lệnh có extension thêm nó vào
3. Copy tất cả các file ic*.dll (C:xamppphp)vào thư mục apache/bin (Tại C:xamppapachebin)
4. Restart Apache sau đó truy cập lại
Nếu xuất hiện lỗi Error Please replace src/Template/Pages/home.ctp with your own version or re-enable debug mode.
Bạn sẽ làm như sau:
Truy cập vào src/Template/Pages/ mở file home.ctp bằng Notepad++
Xoá 3 dòng này đi
if (!Configure::read(‘debug’)) :
throw new NotFoundException(
‘Please replace src/Template/Pages/home.ctp with your own version or re-enable debug mode.’
);
endif;
Sau đó lưu lại và load lại kết quả sẽ như thế này.
Khởi tạo chương trình Hello World bằng CakePHP
Đầu tiên bạn sẽ vào C:xampphtdocscakephpsrcTemplatePages tạo 1 file là blog.ctp (Trong CakePHP 4 thì sẽ đặt đuôi mở rộng là .php cụ thể là blog.php)
Với đoạn code:
<?php echo "Hello World"; ?>
Cách thức hoạt động của View (Cakephp 4)
Tại
C:xampphtdocsbcakephptemplates
bạn sẽ tạo ra 1 thư mục là Blog. Nó sẽ phải khớp với BlogController. Giả sử bạn có PagesController.php thì lúc này cũng sẽ phải tạo một thư mục là Pages
Tiếp theo vào C:xampphtdocscakephpsrcController tạo 1 tập tin là BlogController.php (Lưu ý là Class phải đặt trùng với file)
<?php namespace AppController; use AppControllerAppController; class BlogController extends AppController{ public function index(){ } } ?>
Tiếp theo bạn truy cập vào thư mục C:xampphtdocscakephpconfig mở file routes.php
Tìm tới dòng:
$routes->connect('/', ['controller' => 'Pages', 'action' => 'display', 'home']);
Thay home thành blog để nó điều hướng tới blog.ctp
Cách thức hoạt động của Route trong Cakephp
$router->connect(‘/home’, [‘controller’ => ‘Pages’, ‘action’ => ‘display’, ‘blog’]);
/home là đường dẫn sẽ truy cập ở trên trình duyệt dạng http://localhost/cakephp/home
Pages là controller. File gốc là PagesController.php trong file này sẽ có một hàm là display
Cuối cùng là blog là tập tin nằm trong templates/Pages
Cập nhật: 06/08/2021: $routes->connect(‘/homepage’, [‘controller’ => ‘Articles’, ‘action’ => ‘index’]); thì hàm public function index sẽ trùng với tập tin index.php trong templates/Articles.
Sau đó truy cập http://localhost/cakephp/
trên trình duyệt để xem kết quả.
Bước tiếp theo mở file app.php để kết nới Database
Tìm đến đoạn này
//’username’ => ‘my_app’,
//’password’ => ‘secret’,
//’database’ => ‘my_app’,
và sửa lại thành
Oke như vậy bạn đã hoàn tất phần cài đặt và cấu hình trong CakePHP rồi đấy. Các bài tiếp theo mình sẽ hướng dẫn bạn cách chèn, hiển thị dữ liệu trong Database ra trang chủ như thế nào nhé!