[Bài 1] CakePHP là gì? Cài đặt CakePHP Framework thế nào?

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

cakephp

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.

cakephp-1

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

Cấu hình kết nối Database CakePHP

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é!

Related Posts

Namespace trong PHP

Namespace cho phép các lớp / hàm / hằng cùng tên được sử dụng trong các ngữ cảnh khác nhau mà không có bất kỳ xung đột…

Hàm str_split() trong PHP

Bài viết này chúng ta sẽ đi tìm hiểu về hàm str_split(). Một trong những hàm thường được dùng trong PHP. Vậy cách sử dụng str_split() như…

Tạo chức năng sửa xoá thành viên bằng PHP & MySQL

Với một số trang web để quản lý thành viên (user) dễ dàng trong phần quản trị admin bạn phải khởi tạo chức năng sửa xoá thành…

Hàm str_replace trong PHP

Hàm str_replace trong PHP là gì? Hàm str_replace() trong PHP là một hàm được sử dụng để thay thế tất cả các xuất hiện của một chuỗi…

laravel8-vews-1

Views trong Laravel 8

Trong chuỗi series hướng dẫn học Laravel thì Views cũng quan trọng không kém gì so với Controller hay Model. Vậy chúng ta sẽ làm thế nào…

Validate Form trong PHP

Mặc dù trình duyệt hỗ trợ JavaScript để xác thực người dùng cho website. Tuy nhiên nếu JavaScript bị lỗi hoặc tắt đi thì công việc này…