찾다
백엔드 개발PHP 튜토리얼Yii 프레임워크 공식 튜토리얼 보충 자료 3 - 시작하기: 첫 번째 Yii 애플리케이션 만들기

<br>

<br>

Yii에 대한 사전 이해를 돕기 위해 이 섹션에서는 첫 번째 Yii 애플리케이션을 구축하는 방법을 설명하겠습니다. yiic(명령줄 도구)을 사용하여 새로운 Yii 애플리케이션을 생성하겠습니다. Gii(강력한 웹 기반 코드 생성기)는 특정 작업에 대한 자동 코드 생성을 완료합니다. YiiRoot가 Yii의 설치 디렉터리이고 WebRoot가 서버의 문서 루트 디렉터리라고 가정합니다. 다음과 같이 명령줄에서 yiic을 실행합니다.

% YiiRoot/framework/yiic webapp WebRoot/testdrive

참고: MacOS, Linux 또는 Unix 시스템에서 yiic을 실행하는 경우 yiic 파일의 권한을 다음과 같이 수정해야 할 수도 있습니다. 실행할 수 있도록 합니다. 그리고 터미널 명령줄에서 php 명령을 직접 실행할 수 있어야 합니다(테스트하려면 터미널에서 php -v를 사용할 수 있음). 그렇지 않은 경우 실행 가능한 PHP 경로를 시스템 경로에 배치해야 합니다. 또한 다음과 같이 이 도구를 실행할 수도 있습니다.

% cd WebRoot
% php YiiRoot/framework/yiic.php webapp testdrive

이렇게 하면 WebRoot/testdrive 디렉터리에 기본 Yii 애플리케이션이 생성됩니다. 이 애플리케이션은 대부분의 Yii 애플리케이션에 필요한 디렉토리 구조를 가지고 있습니다. 코드 한 줄을 작성하지 않고도 브라우저에서 다음 URL에 액세스하여 첫 번째 Yii 애플리케이션을 살펴볼 수 있습니다.

http://www.php.cn/

보시다시피 이 애플리케이션에는 홈 페이지, 연락처 페이지, 그리고 로그인 페이지. 홈 페이지에는 애플리케이션 및 사용자의 로그인 상태에 대한 일부 정보가 표시되고, 연락처 페이지에는 사용자가 문의 사항을 작성하고 제출할 수 있는 문의 양식이 표시되며, 로그인 페이지에서는 사용자가 먼저 인증한 다음 승인된 콘텐츠에 액세스할 수 있습니다. 자세한 내용은 다음 스크린샷을 확인하세요.

Yii 프레임워크 공식 튜토리얼 보충 자료 3 - 시작하기: 첫 번째 Yii 애플리케이션 만들기Yii 프레임워크 공식 튜토리얼 보충 자료 3 - 시작하기: 첫 번째 Yii 애플리케이션 만들기Yii 프레임워크 공식 튜토리얼 보충 자료 3 - 시작하기: 첫 번째 Yii 애플리케이션 만들기Yii 프레임워크 공식 튜토리얼 보충 자료 3 - 시작하기: 첫 번째 Yii 애플리케이션 만들기Yii 프레임워크 공식 튜토리얼 보충 자료 3 - 시작하기: 첫 번째 Yii 애플리케이션 만들기

아래 트리 다이어그램은 애플리케이션의 디렉터리 구조를 설명합니다.

testdrive/
   index.php                 Web 应用入口脚本文件
   index-test.php            功能测试使用的入口脚本文件
   assets/                   包含公开的资源文件
   css/                      包含 CSS 文件
   images/                   包含图片文件
   themes/                   包含应用主题
   protected/                包含受保护的应用文件
      yiic                   yiic 命令行脚本
      yiic.bat               Windows 下的 yiic 命令行脚本
      yiic.php               yiic 命令行 PHP 脚本
      commands/              包含自定义的 'yiic' 命令
         shell/              包含自定义的 'yiic shell' 命令
      components/            包含可重用的用户组件
         Controller.php      所有控制器类的基础类
         Identity.php        用来认证的 'Identity' 类
      config/                包含配置文件 console.php         控制台应用配置
         main.php            Web 应用配置
         test.php            功能测试使用的配置
      controllers/           包含控制器的类文件
         SiteController.php  默认控制器的类文件
      data/                  包含示例数据库 schema.mysql.sql    示例 MySQL 数据库
         schema.sqlite.sql   示例 SQLite 数据库
         testdrive.db        示例 SQLite 数据库文件
      extensions/            包含第三方扩展
      messages/              包含翻译过的消息
      models/                包含模型的类文件
         LoginForm.php       'login' 动作的表单模型
         ContactForm.php     'contact' 动作的表单模型
      runtime/               包含临时生成的文件
      tests/                 包含测试脚本
      views/                 包含控制器的视图和布局文件
         layouts/            包含布局视图文件
            main.php         所有视图的默认布局
            column1.php      使用单列页面使用的布局
            column2.php      使用双列的页面使用的布局
         site/               包含 'site' 控制器的视图文件
            pages/           包含 "静态" 页面
               about.php     "about" 页面的视图
            contact.php      'contact' 动作的视图
            error.php        'error' 动作的视图(显示外部错误)
            index.php        'index' 动作的视图
            login.php        'login' 动作的视图
         system/             包含系统视图文件

1. 데이터베이스에 연결

대부분의 웹 애플리케이션은 데이터베이스에 의해 구동되며 우리의 테스트 애플리케이션도 예외는 아닙니다. 데이터베이스를 사용하려면 먼저 애플리케이션에 연결 방법을 알려주어야 합니다. 애플리케이션의 구성 파일 WebRoot/testdrive/protected/config/main.php를 다음과 같이 수정하세요.

<br>

return array(
    ......
    'components'=>array(
        ......
        'db'=>array(
            'connectionString'=>'sqlite:protected/data/source.db',
        ),
    ),
    ......
);

위 내용 코드는 필요할 때 Yii 애플리케이션에 SQLite 데이터베이스 WebRoot/testdrive/protected/data/testdrive.db에 연결하도록 지시합니다. 이 SQLite 데이터베이스는 우리가 만든 애플리케이션 프레임워크에 이미 포함되어 있습니다. 데이터베이스에는 tbl_user라는 테이블 하나만 포함되어 있습니다.

<br>

CREATE TABLE tbl_user (
    id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
    username VARCHAR(128) NOT NULL,
    password VARCHAR(128) NOT NULL,
    email VARCHAR(128) NOT NULL
);

MySQL 데이터베이스로 변경하려면 가져오기가 필요합니다. WebRoot/testdrive/protected/data/schema.mysql.sql 파일을 사용하여 데이터베이스를 생성합니다.

참고: Yii의 데이터베이스 기능을 사용하려면 PHP의 PDO 확장과 해당 드라이버 확장을 활성화해야 합니다. 테스트 애플리케이션의 경우 php_pdo 및 php_pdo_sqlite 확장을 활성화해야 합니다.

2. CRUD 작업 구현

흥미로운 순간이 왔습니다. 방금 생성한 tbl_user 테이블에 대해 실제 애플리케이션에서 가장 일반적인 작업이기도 한 CRUD(생성, 읽기, 업데이트 및 삭제) 작업을 구현하려고 합니다. 실제 코드를 작성하는 수고를 겪지 않고 여기서는 강력한 웹 기반 코드 생성기인 Gii를 사용하겠습니다.

Gii 구성

Gii를 사용하려면 먼저 애플리케이션 구성이라고 알려진 WebRoot/testdrive/protected/main.php 파일을 편집해야 합니다. 파일:

return array(
    ......
    'import'=>array(
        'application.models.*',
        'application.components.*',
    ),

    'modules'=>array(
        'gii'=>array(
            'class'=>'system.gii.GiiModule',
            'password'=>'pick up a password here',
        ),
    ),
);

그런 다음 http://www.php.cn/을 방문하세요. 여기에는 위의 구성에서 지정한 비밀번호를 입력해야 합니다.

사용자 모델 생성

로그인 후 모델 생성기 링크를 클릭하세요. 다음과 같은 모델 생성 페이지가 표시됩니다. Yii 프레임워크 공식 튜토리얼 보충 자료 3 - 시작하기: 첫 번째 Yii 애플리케이션 만들기

테이블 이름 입력 상자에 tbl_user를 입력합니다. 모델 클래스 입력 상자에 User를 입력합니다. 그런 다음 미리보기 버튼을 클릭하세요. 그러면 생성될 새 파일이 표시됩니다. 이제 생성 버튼을 클릭하세요. User.php라는 파일이 protected/models 디렉터리에 생성됩니다. 나중에 설명하겠지만 User 모델 클래스를 사용하면 객체 지향 방식으로 데이터 테이블 tbl_user에 액세스할 수 있습니다.

CRUD 코드 생성

모델 클래스를 생성한 후 CRUD 작업을 수행하는 코드를 생성합니다. 아래와 같이 Gii에서 Crud Generator를 선택합니다. Yii 프레임워크 공식 튜토리얼 보충 자료 3 - 시작하기: 첫 번째 Yii 애플리케이션 만들기

在Model Class输入框中,输入User。在Controller ID输入框中,输入user(小写格式)。现在点击Generate按钮后的 Preview按钮。CRUD 代码生成完成了。

访问 CRUD 页面

让我们看看成果,访问如下 URL:

http://www.php.cn/

这会显示一个tbl_user表中记录的列表。 点击页面上的Create User 链接,如果没有登录的话我们将被带到Yii 프레임워크 공식 튜토리얼 보충 자료 3 - 시작하기: 첫 번째 Yii 애플리케이션 만들기。登录后,我们看到一个可供我们添加新用户的表单。完成表单并点击Create按钮,如果有任何输入错误的话,一个友好的错误提示将会显示并阻止我们保存。回到用户列表页,我们应该能看到刚才添加的用户显示在列表中。 重复上述步骤以添加更多用户。注意,如果一页显示的用户条目太多,列表页会自动分页。 如果我们使用admin/admin作为管理员登录,我们可以在如下 URL 查看用户管理页:

http://www.php.cn/

这会显示一个包含用户条目的漂亮表格。我们可以点击表头的单元格来对相应的列进行排序,而且它和列表页一样会自动分页。 实现所有这些功能不要我们编写一行代码!

<br>

Yii 프레임워크 공식 튜토리얼 보충 자료 3 - 시작하기: 첫 번째 Yii 애플리케이션 만들기

以上就是Yii框架官方教程增补篇3——开始:创建第一个Yii应用的内容,更多相关内容请关注PHP中文网(www.php.cn)!

<br>

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
PHP의 목적 : 동적 웹 사이트 구축PHP의 목적 : 동적 웹 사이트 구축Apr 15, 2025 am 12:18 AM

PHP는 동적 웹 사이트를 구축하는 데 사용되며 해당 핵심 기능에는 다음이 포함됩니다. 1. 데이터베이스와 연결하여 동적 컨텐츠를 생성하고 웹 페이지를 실시간으로 생성합니다. 2. 사용자 상호 작용 및 양식 제출을 처리하고 입력을 확인하고 작업에 응답합니다. 3. 개인화 된 경험을 제공하기 위해 세션 및 사용자 인증을 관리합니다. 4. 성능을 최적화하고 모범 사례를 따라 웹 사이트 효율성 및 보안을 개선하십시오.

PHP : 데이터베이스 및 서버 측 로직 처리PHP : 데이터베이스 및 서버 측 로직 처리Apr 15, 2025 am 12:15 AM

PHP는 MySQLI 및 PDO 확장 기능을 사용하여 데이터베이스 작업 및 서버 측 로직 프로세싱에서 상호 작용하고 세션 관리와 같은 기능을 통해 서버 측로 로직을 처리합니다. 1) MySQLI 또는 PDO를 사용하여 데이터베이스에 연결하고 SQL 쿼리를 실행하십시오. 2) 세션 관리 및 기타 기능을 통해 HTTP 요청 및 사용자 상태를 처리합니다. 3) 트랜잭션을 사용하여 데이터베이스 작업의 원자력을 보장하십시오. 4) SQL 주입 방지, 디버깅을 위해 예외 처리 및 폐쇄 연결을 사용하십시오. 5) 인덱싱 및 캐시를 통해 성능을 최적화하고, 읽을 수있는 코드를 작성하고, 오류 처리를 수행하십시오.

PHP에서 SQL 주입을 어떻게 방지합니까? (준비된 진술, pdo)PHP에서 SQL 주입을 어떻게 방지합니까? (준비된 진술, pdo)Apr 15, 2025 am 12:15 AM

PHP에서 전처리 문과 PDO를 사용하면 SQL 주입 공격을 효과적으로 방지 할 수 있습니다. 1) PDO를 사용하여 데이터베이스에 연결하고 오류 모드를 설정하십시오. 2) 준비 방법을 통해 전처리 명세서를 작성하고 자리 표시자를 사용하여 데이터를 전달하고 방법을 실행하십시오. 3) 쿼리 결과를 처리하고 코드의 보안 및 성능을 보장합니다.

PHP 및 Python : 코드 예제 및 비교PHP 및 Python : 코드 예제 및 비교Apr 15, 2025 am 12:07 AM

PHP와 Python은 고유 한 장점과 단점이 있으며 선택은 프로젝트 요구와 개인 선호도에 달려 있습니다. 1.PHP는 대규모 웹 애플리케이션의 빠른 개발 및 유지 보수에 적합합니다. 2. Python은 데이터 과학 및 기계 학습 분야를 지배합니다.

PHP 실행 : 실제 예제 및 응용 프로그램PHP 실행 : 실제 예제 및 응용 프로그램Apr 14, 2025 am 12:19 AM

PHP는 전자 상거래, 컨텐츠 관리 시스템 및 API 개발에 널리 사용됩니다. 1) 전자 상거래 : 쇼핑 카트 기능 및 지불 처리에 사용됩니다. 2) 컨텐츠 관리 시스템 : 동적 컨텐츠 생성 및 사용자 관리에 사용됩니다. 3) API 개발 : 편안한 API 개발 및 API 보안에 사용됩니다. 성능 최적화 및 모범 사례를 통해 PHP 애플리케이션의 효율성과 유지 보수 성이 향상됩니다.

PHP : 대화식 웹 컨텐츠를 쉽게 만들 수 있습니다PHP : 대화식 웹 컨텐츠를 쉽게 만들 수 있습니다Apr 14, 2025 am 12:15 AM

PHP를 사용하면 대화식 웹 컨텐츠를 쉽게 만들 수 있습니다. 1) HTML을 포함하여 컨텐츠를 동적으로 생성하고 사용자 입력 또는 데이터베이스 데이터를 기반으로 실시간으로 표시합니다. 2) 프로세스 양식 제출 및 동적 출력을 생성하여 htmlspecialchars를 사용하여 XSS를 방지합니다. 3) MySQL을 사용하여 사용자 등록 시스템을 작성하고 Password_Hash 및 전처리 명세서를 사용하여 보안을 향상시킵니다. 이러한 기술을 마스터하면 웹 개발의 효율성이 향상됩니다.

PHP 및 Python : 두 가지 인기있는 프로그래밍 언어를 비교합니다PHP 및 Python : 두 가지 인기있는 프로그래밍 언어를 비교합니다Apr 14, 2025 am 12:13 AM

PHP와 Python은 각각 고유 한 장점이 있으며 프로젝트 요구 사항에 따라 선택합니다. 1.PHP는 웹 개발, 특히 웹 사이트의 빠른 개발 및 유지 보수에 적합합니다. 2. Python은 간결한 구문을 가진 데이터 과학, 기계 학습 및 인공 지능에 적합하며 초보자에게 적합합니다.

PHP의 지속적인 관련성 : 여전히 살아 있습니까?PHP의 지속적인 관련성 : 여전히 살아 있습니까?Apr 14, 2025 am 12:12 AM

PHP는 여전히 역동적이며 현대 프로그래밍 분야에서 여전히 중요한 위치를 차지하고 있습니다. 1) PHP의 단순성과 강력한 커뮤니티 지원으로 인해 웹 개발에 널리 사용됩니다. 2) 유연성과 안정성은 웹 양식, 데이터베이스 작업 및 파일 처리를 처리하는 데 탁월합니다. 3) PHP는 지속적으로 발전하고 최적화하며 초보자 및 숙련 된 개발자에게 적합합니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
4 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
4 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
1 몇 달 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

안전한 시험 브라우저

안전한 시험 브라우저

안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구