Tin Tức

Tổng hợp các bài viết, kinh nghiệm, chia sẻ kiến thức hữu ích về việc làm onsite, nhân sự onsite.

Hướng dẫn xây dựng ứng dụng web PHP với Yii2 Framework cho người mới bắt đầu

folder Kiến thức công nghệ
today 27/08/2024 21:20
Trong hướng dẫn này, chúng ta sẽ khám phá cách xây dựng một ứng dụng web PHP sử dụng framework Yii2. Yii2 là một framework PHP mã nguồn mở hiệu suất cao, được thiết kế để phát triển các ứng dụng web hiện đại. Nó cung cấp các công cụ mạnh mẽ cho việc sinh mã, lập trình hướng đối tượng, và tương tác cơ sở dữ liệu, khiến nó trở thành sự lựa chọn phổ biến cho các nhà phát triển PHP. Cuối cùng của hướng dẫn này, bạn sẽ có một hiểu biết vững chắc về cách xây dựng ứng dụng web PHP bằng Yii2.
  1. Yêu cầu     

Trước khi bắt đầu, bạn nên có kiến thức cơ bản về PHP và hiểu biết cơ bản về kiến trúc MVC. Thêm vào đó, bạn cần cài đặt các phần mềm sau trên hệ thống của bạn:

  • PHP 5.4 trở lên
  • Composer
  • MySQL hoặc hệ thống quản lý cơ sở dữ liệu khác
  • Một máy chủ web như Apache hoặc Nginx
  1. Cài đặt Yii2 

Để cài đặt Yii2, mở terminal của bạn và chạy lệnh sau:

composer global require "fxp/composer-asset-plugin:^1.2.0"
composer create-project --prefer-dist yiisoft/yii2-app-basic mywebapp


Lệnh này sẽ cài đặt framework Yii2 và tạo một mẫu ứng dụng cơ bản Yii2 mới gọi là "mywebapp". Bạn có thể thay thế "mywebapp" bằng tên dự án của bạn.

  1. Cấu hình ứng dụng web của bạn

Khi cài đặt xong, điều hướng đến thư mục dự án của bạn và mở file "web/index.php". Thêm đoạn mã sau để bật chế độ gỡ lỗi và hiển thị thông báo lỗi:

defined('YII_DEBUG') or define('YII_DEBUG', true);
defined('YII_ENV') or define('YII_ENV', 'dev');

Tiếp theo, cấu hình máy chủ web của bạn để trỏ đến thư mục "web" của ứng dụng Yii2. Đối với Apache, tạo một máy chủ ảo mới trong file "httpd-vhosts.conf" với cấu hình sau:

<VirtualHost *:80>
    ServerName mywebapp.local
    DocumentRoot "/path/to/your/yii2-app/web"
    <Directory "/path/to/your/yii2-app/web">
        AllowOverride All
    </Directory>
</VirtualHost>

Thay thế "mywebapp.local" bằng tên miền bạn mong muốn và "/path/to/your/yii2-app" bằng đường dẫn đến ứng dụng Yii2 của bạn. Đừng quên cập nhật file "hosts" của bạn để ánh xạ tên miền với "127.0.0.1".

  1. Tạo cơ sở dữ liệu và cấu hình ứng dụng

Tạo một cơ sở dữ liệu MySQL mới và người dùng cho ứng dụng Yii2 của bạn. Sau đó, mở file "config/db.php" và cập nhật cấu hình cơ sở dữ liệu với cơ sở dữ liệu và người dùng mới tạo:

return [
    'class' => 'yii\db\Connection',
    'dsn' => 'mysql:host=localhost;dbname=mywebapp',
    'username' => 'mywebapp',
    'password' => 'mypassword',
    'charset' => 'utf8',
];
  1. Tạo các thao tác CRUD với Gii Yii2

bao gồm một công cụ sinh mã mạnh mẽ gọi là Gii, giúp dễ dàng tạo các thao tác CRUD cho ứng dụng của bạn. Trước tiên, bật Gii bằng cách thêm đoạn mã sau vào file "config/web.php":

if (YII_ENV_DEV) {
    $config['bootstrap'][] = 'gii';
    $config['modules']['gii'] = [
        'class' => 'yii\gii\Module',
    ];
}

Tiếp theo, điều hướng đến "http://mywebapp.local/gii" trong trình duyệt của bạn và nhấp vào liên kết "CRUD Generator". Điền vào các trường cần thiết và nhấp vào "Preview" để tạo các thao tác CRUD cho ứng dụng của bạn. Cuối cùng, nhấp vào "Generate" để tạo các file cần thiết.

  1. Thêm xác thực người dùng 

Yii2 cung cấp hỗ trợ tích hợp cho xác thực người dùng. Để bật tính năng này, mở file "config/web.php" và thêm đoạn mã sau vào phần 'components':

'user' => [
    'identityClass' => 'app\models\User',
    'enableAutoLogin' => true,
],

Tiếp theo, tạo một mô hình User mới bằng cách mở rộng lớp "yii\base\BaseObject" và triển khai giao diện "yii\web\IdentityInterface". Mô hình này sẽ xử lý xác thực người dùng và lưu trữ dữ liệu người dùng. Cuối cùng, tạo một biểu mẫu đăng nhập và một biểu mẫu đăng ký cho ứng dụng của bạn, theo tài liệu Yii2.

     7. Tùy chỉnh giao diện người dùng

Yii2 sử dụng framework Bootstrap cho giao diện người dùng mặc định của nó. Bạn có thể tùy chỉnh giao diện của ứng dụng bằng cách chỉnh sửa file "views/layouts/main.php" và các file view khác trong dự án của bạn. Bạn cũng có thể thêm các file CSS và JavaScript mới vào thư mục "assets" và đăng ký chúng trong các view của bạn.

     8. Kết luận

Trong hướng dẫn này, bạn đã học cách xây dựng một ứng dụng web PHP sử dụng framework Yii2. Bạn hiện đã sẵn sàng để tìm hiểu sâu hơn tài liệu Yii2 và thuê các nhà phát triển PHP có kinh nghiệm với framework này. Chúc bạn thành công với các dự án Yii2 của mình!