> 백엔드 개발 > PHP 튜토리얼 > PHP 프레임워크 Yii를 활용하여 시각적 운영체제를 개발하고 편리한 관리 서비스를 제공하는 방법

PHP 프레임워크 Yii를 활용하여 시각적 운영체제를 개발하고 편리한 관리 서비스를 제공하는 방법

WBOY
풀어 주다: 2023-06-27 18:56:02
원래의
854명이 탐색했습니다.

Yii는 웹 애플리케이션 개발에 널리 사용되는 강력한 PHP 프레임워크입니다. 이번 글에서는 Yii 프레임워크를 활용하여 시각적인 운영체제를 개발하고 편리한 관리 서비스를 제공하는 방법에 대해 알아보겠습니다.

  1. Yii 프레임워크 및 관련 종속성 설치

Yii 프레임워크 개발을 시작하기 전에 먼저 Yii 프레임워크 및 관련 종속성을 설치해야 합니다. Yii 프레임워크는 Composer를 통해 설치할 수 있으며 다음 명령을 실행합니다:

composer create-project yiisoft/yii2-app-basic myproject
로그인 후 복사

이 명령은 myproject라는 새 프로젝트를 생성하고 Yii 프레임워크와 관련 구성 요소 및 라이브러리 파일을 프로젝트에 설치합니다. 다음으로 jQuery 및 Bootstrap을 포함한 몇 가지 다른 종속성을 설치해야 합니다.

composer require bower-asset/jquery
composer require bower-asset/bootstrap
로그인 후 복사
  1. 데이터베이스 생성

시각적 운영 체제를 생성하기 전에 모든 데이터를 저장할 데이터베이스를 생성해야 합니다. Yii 프레임워크는 MySQL, PostgreSQL, SQLite를 포함한 다양한 유형의 데이터베이스를 지원합니다. 이 글에서는 MySQL 데이터베이스를 사용하겠습니다.

먼저 MySQL에서 새 데이터베이스를 만들어야 합니다. 다음 명령을 사용할 수 있습니다.

CREATE DATABASE mydatabase;
로그인 후 복사

다음으로, 다음 명령을 실행하여 필요한 필드가 있는 "users" 테이블을 만듭니다.

CREATE TABLE `users` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `username` varchar(255) NOT NULL,
  `password` varchar(255)
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
로그인 후 복사
  1. Yii 응용 프로그램 만들기

이제 Yii 응용 프로그램 만들기를 시작할 준비가 되었습니다. Yii 프레임워크에서 모든 웹 애플리케이션은 "애플리케이션"이라는 구성 요소로 구성됩니다. 애플리케이션을 생성하는 단계는 다음과 같습니다.

3.1 "_frontend"라는 하위 디렉터리 생성

mkdir _frontend
로그인 후 복사

3.2 Yii CLI 도구를 사용하여 새 애플리케이션 생성

./yii init --application=/path/to/_frontend
로그인 후 복사

이 명령은 새로운 Yii 애플리케이션을 생성하고 관련된 모든 항목을 저장합니다. _frontend 디렉터리의 파일 및 디렉터리.

3.3 데이터베이스 연결 구성

Yii 구성 파일에 데이터베이스 연결을 추가해야 데이터베이스를 정상적으로 사용할 수 있습니다. 구성 파일 config/db.php는 다음과 같이 찾아서 편집할 수 있습니다.

return [
    'class' => 'yiidbConnection',
    'dsn' => 'mysql:host=localhost;dbname=mydatabase',
    'username' => 'root',
    'password' => '',
    'charset' => 'utf8',
];
로그인 후 복사

3.4 기본 컨트롤러 만들기

비주얼 운영 체제 만들기를 시작하기 전에 기본 컨트롤러를 만들어야 합니다. 이 컨트롤러는 다른 컨트롤러가 이러한 메서드를 상속할 수 있도록 기본 작업 및 메서드를 제공하는 데 사용됩니다. 다음 명령을 사용하여 이 컨트롤러를 생성할 수 있습니다.

./yii g/controller base
로그인 후 복사

이 명령은 컨트롤러 디렉터리에 "BaseController"라는 컨트롤러를 생성하고 이에 대한 기본 작업과 메서드를 생성합니다. 다른 모든 컨트롤러는 이 컨트롤러에서 상속되어야 합니다.

3.5 라우팅 수정

새로 생성된 컨트롤러로 요청을 라우팅하려면 Yii 프레임워크의 라우팅 구성 파일을 수정해야 합니다. 구성 파일 config/web.php를 열고 다음 내용을 수정합니다.

return [
    // ...
    'defaultRoute' => 'base',
    'components' => [
        'urlManager' => [
            'enablePrettyUrl' => true,
            'showScriptName' => false,
            'rules' => []    
        ],
    ],
];
로그인 후 복사

이제 시각적 운영 체제 생성을 시작할 준비가 되었습니다.

  1. 시각적 운영 체제 만들기

이 기사에서는 다음 기능을 갖춘 시각적 운영 체제를 만듭니다.

  • 사용자 등록 및 로그인
  • 사용자 관리 기능
  • 파일 관리 기능

4.1 사용자 등록 및 로그인

Yii에 내장된 사용자 인증 및 액세스 제어를 사용하여 사용자 등록 및 로그인을 관리하겠습니다. 사용자 컨트롤러를 생성하려면 다음 단계를 따르십시오.

4.1.1 CLI 도구를 사용하여 사용자 컨트롤러 생성

./yii g/controller user
로그인 후 복사

이 명령은 컨트롤러 디렉터리에 사용자 컨트롤러를 생성하고 이에 대한 기본 작업 및 메서드를 생성합니다.

4.1.2 사용자 등록 및 로그인 작업 추가

사용자 컨트롤러 파일을 열고 다음 작업을 추가하세요.

class UserController extends commoncontrollersBaseController {

    ...
    
    public function actionLogin() {
        // 登录功能代码
    }

    public function actionLogout() {
        // 注销功能代码
    }

    public function actionSignup() {
        // 注册功能代码
    }

    public function actionProfile() {
        // 用户信息页面代码
    }

    ...
    
}
로그인 후 복사

4.1.3 액세스 제어 설정

Yii 프레임워크에서는 액세스를 통해 사용자를 애플리케이션으로 제한할 수 있습니다. 의 다른 부분에 대한 기능 액세스를 제어합니다. 로그인하지 않은 사용자의 접근을 제한하려면 config/web.php 파일을 열고 다음 내용을 추가하세요:

return [
    // ...
    'components' => [
        // ...
        'user' => [
            'identityClass' => 'commonmodelsUser',
            'enableAutoLogin' => true,
            'loginUrl' => ['user/login'],
        ],
        'authManager' => [
            'class' => 'yiibacDbManager',
        ],
    ],
    'as access' => [
        'class' => 'yiiwebAccessControl',
        'rules' => [
            [
                'actions' => ['login', 'signup'],
                'allow' => true,
            ],
            [
                'actions' => ['logout', 'profile'],
                'allow' => true,
                'roles' => ['@'],
            ]
        ],
    ],
];
로그인 후 복사

4.1.4 사용자 모델 만들기

사용자를 관리하려면 모델이 필요합니다. 사용자 모델 생성 및 Yii 내장 사용자 모델 상속:

class User extends yiidbActiveRecord implements yiiwebIdentityInterface {
    
    ...
}
로그인 후 복사

4.2 사용자 관리 기능

사용자를 관리하기 위해 사용자 관리 컨트롤러를 생성하겠습니다. 컨트롤러를 생성하려면 다음 단계를 따르십시오.

4.2.1 CLI 도구를 사용하여 컨트롤러 생성

./yii g/controller admin/UserManagement
로그인 후 복사

이 명령은 컨트롤러 디렉터리에 사용자 관리 컨트롤러를 생성하고 이에 대한 기본 작업 및 메서드를 생성합니다.

4.2.2 사용자 관리 작업 추가

사용자 관리 컨트롤러 파일을 열고 다음 작업을 추가합니다.

class UserManagementController extends commoncontrollersBaseController {

    ...

    public function actionIndex() {
        // 用户列表页面代码
    }

    public function actionCreate() {
        // 创建新用户页面代码
    }

    public function actionUpdate($id) {
        // 更新用户页面代码
    }

    public function actionDelete($id) {
        // 删除用户功能代码
    }

    ...
    
}
로그인 후 복사

4.2.3 사용자 관리 모델 생성

사용자를 관리할 모델이 필요합니다. 사용자 관리 모델을 생성합니다. , 그리고 Yii의 내장 사용자 모델을 확장합니다:

class UserManagement extends commonmodelsUser {
    
    ...
}
로그인 후 복사

4.3 파일 관리 기능

파일을 관리하기 위해 파일 관리 컨트롤러를 생성하겠습니다. 컨트롤러를 생성하려면 아래 단계를 따르십시오.

4.3.1 CLI 도구를 사용하여 컨트롤러 생성

./yii g/controller admin/FileManagement
로그인 후 복사

이 명령은 컨트롤러 디렉터리에 파일 관리라는 컨트롤러를 생성하고 필요에 따라 기본 작업 및 메서드를 생성합니다.

4.3.2 파일 관리 작업 추가

파일 관리 컨트롤러 파일을 열고 다음 작업을 추가합니다.

class FileManagementController extends commoncontrollersBaseController {

    ...
    
    public function actionIndex() {
        // 文件列表页面代码
    }

    public function actionUpload() {
        // 上传文件页面代码
    }

    public function actionDownload($id) {
        // 文件下载特定功能代码
    }

    public function actionDelete($id) {
        // 删除文件功能代码
    }

    ...
    
}
로그인 후 복사

4.3.3 파일 관리 모델 생성

파일을 관리하려면 모델이 필요합니다. 모델을 만들려면 다음 단계를 따르세요.

class FileManagement extends yiidbActiveRecord {
    
    ...
}
로그인 후 복사
  1. 总结

在本文中,我们已经学习了如何使用Yii框架来创建一个可视化操作系统,并提供便捷的管理服务。我们覆盖了许多方面,包括用户管理、文件管理、注册和登录功能等等。通过将这些知识应用于您自己的项目中,您将能够创建一个强大而灵活的Web应用程序,为用户提供出色的体验。

위 내용은 PHP 프레임워크 Yii를 활용하여 시각적 운영체제를 개발하고 편리한 관리 서비스를 제공하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿