CodeIgniter 연구 노트 항목 2 - CI의 MVC
1. CI의 컨트롤러
CI를 통해 자신만의 프로젝트를 생성하려면 CI 압축 패키지에 있는 애플리케이션 디렉토리, 시스템 디렉토리, index.php 파일을 자신의 프로젝트 디렉토리에 복사하기만 하면 됩니다. 애플리케이션 디렉토리에서 전체 코드를 편집하십시오. 시스템 디렉토리를 수정하지 마십시오. 향후 CI의 새 버전이 출시되면 시스템 파일의 내용만 바꾸면 됩니다. 업그레이드에 문제가 있습니다.
복사가 완료된 후 다음 URL을 통해 새 프로젝트의 홈페이지를 엽니다: http://localhost:8080/testCodeIgniter/
이 페이지를 통해 CI는 현재 표시된 뷰가 Welcome_message.php 파일에 정의되어 있고 현재 사용되는 컨트롤러가 Welcome.php라는 메시지를 표시합니다
열기
/application/controllers/Welcome.php
파일인 경우, 이 파일에는 뷰를 로드하는 인덱스 방법이 하나만 있습니다.
welcome_message
[code]<?php defined('BASEPATH') OR exit('No direct script access allowed'); class Welcome extends CI_Controller { /** * Index Page for this controller. * * Maps to the following URL * http://example.com/index.php/welcome * - or - * http://example.com/index.php/welcome/index * - or - * Since this controller is set as the default controller in * config/routes.php, it's displayed at http://example.com/ * * So any other public methods not prefixed with an underscore will * map to /index.php/welcome/<method_name> * @see http://codeigniter.com/user_guide/general/urls.html */ public function index() { $this->load->view('welcome_message'); } } ?>
파일 보기
welcome_message.php
/application/views
디렉토리
에서 pathinfo를 사용하여 URL을 통해 컨트롤러에 액세스합니다. 형식은 다음과 같습니다. 프로토콜:// 도메인 이름/항목 파일/컨트롤러/메서드 이름, 비공개 메서드의 경우 보호된 메서드 또는 밑줄로 시작하는 메서드는 pathinfo를 통해 액세스할 수 없습니다.
위에 새 테스트 메서드 추가 제어 파일 Welcome.php:
[code]public function test() { echo "这是Welcome控制器的test方法"; }
pathinfo(http://localhost:8080/testCodeIgniter/index.php/Welcome/test)
를 통해 Welcome 컨트롤러의 테스트 메소드를 호출할 수 있습니다. 인덱스를 포함한 새 사용자 컨트롤러 생성 메소드
[code]<?php class User extends CI_Controller { public function index() { echo 'user---index'; } } ?>
컨트롤러는 CI_Controller 클래스에서 상속해야 합니다.
사용자 컨트롤러의 인덱스 메소드는 pathinfo: http://localhost:8080/testCodeIgniter/index를 통해 액세스할 수 있습니다. php/user/index
참고: pathinfo는 CI3.0 버전으로 테스트한 후 대소문자를 구분합니다
2. in CI
Controller 뷰
CI가 컨트롤러를 통해 뷰를 로드할 때, 이때
[code]$this->load->view('/user/index');
을 호출하여 뷰 파일 이름은 index.php입니다. , 파일 접미사를 추가할 필요가 없습니다. 파일 경로는 뷰 디렉터리에 대한 애플리케이션/상대 경로를 기반으로 합니다.
뷰 파일은 PHP 네이티브 코드일 수 있으며 HTML 코드는 필요하지 않습니다
컨트롤러에는 여러 개의 뷰를 불러올 수 있으며, 문서의 구조에 따라 위에서 아래로 순차적으로 불러올 수 있습니다
[code]<?php echo "这是user视图"; ?>
컨트롤러가 변수를 할당합니다
두 가지 방법:
1. 단일 변수
[code]$this->load->vars('title', '这是标题');
2. 변수 배치
[code]$data['title'] = '这是标题'; $data['list'] = $list; $this->load->vars($data);
이 두 가지 할당 방법의 경우
$title
$list
을 사용하여 변수에 액세스할 수 있습니다. 여기에는 실제 프로젝트의 예가 나와 있습니다. 데이터는 모델에서 얻어야 합니다.
3. CI
의 모델 파일 이름은 소문자여야 합니다.
system/core/loader.php
的model方法中,会将传入的模型名称转成小写再去寻找对应的文件,但是类名必须是首字母大写并且拼装“
_model
”,拼装后的结果应与模型文件的文件名一致,只是首字母大写,例如:文件名是
user_model.php
,类名应该是
User_model
。
– user_model.php文件
[code]<?php class User_model extends CI_Model { function __construct() { parent::__construct(); } function getAllUser() { $this->load->database(); $result = $this->db->get('blog_user'); return $result->result(); } } ?>
在控制器中这样调用
[code]// 加载模型,通过第二个参数还可以指定别名,后面的代码使用别名访问 $this->load->model('user_model'); // 加载完成后,超级对象就生成了user_model属性,它是User_model类型的对象 $list = $this->user_model->getAllUser(); // 将数据传给视图 $this->load->view('user_view', array('list'=>$list));
原则上,除了关系表,每张实体表都应该对应一个模型
以上就是CodeIgniter学习笔记 Item2--CI中的MVC的内容,更多相关内容请关注PHP中文网(www.php.cn)!

핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

CodeIgniter에서 사용자 정의 미들웨어를 구현하는 방법 소개: 현대 웹 개발에서 미들웨어는 애플리케이션에서 중요한 역할을 합니다. 요청이 컨트롤러에 도달하기 전이나 후에 일부 공유 처리 논리를 수행하는 데 사용할 수 있습니다. 널리 사용되는 PHP 프레임워크인 CodeIgniter는 미들웨어 사용도 지원합니다. 이 글에서는 CodeIgniter에서 사용자 정의 미들웨어를 구현하는 방법을 소개하고 간단한 코드 예제를 제공합니다. 미들웨어 개요: 미들웨어는 일종의 요청입니다.

CodeIgniter 미들웨어: 애플리케이션 응답성 및 페이지 렌더링 가속화 개요: 웹 애플리케이션의 복잡성과 상호 작용이 계속 증가함에 따라 개발자는 애플리케이션 성능과 응답성을 향상시키기 위해 보다 효율적이고 확장 가능한 솔루션을 사용해야 합니다. CodeIgniter(CI)는 많은 유용한 기능을 제공하는 경량 PHP 기반 프레임워크이며 그 중 하나가 미들웨어입니다. 미들웨어는 요청이 컨트롤러에 도달하기 전후에 수행되는 일련의 작업입니다. 이 기사에서는 사용 방법을 소개합니다.

소개 오늘날 빠르게 발전하는 디지털 세계에서는 강력하고 유연하며 유지 관리가 가능한 웹 애플리케이션을 구축하는 것이 중요합니다. PHPmvc 아키텍처는 이러한 목표를 달성하기 위한 이상적인 솔루션을 제공합니다. MVC(Model-View-Controller)는 애플리케이션의 다양한 측면을 독립적인 구성 요소로 분리하는 널리 사용되는 디자인 패턴입니다. MVC 아키텍처의 기초 MVC 아키텍처의 핵심 원칙은 관심사 분리입니다. 모델: 애플리케이션의 데이터와 비즈니스 로직을 캡슐화합니다. 보기: 데이터 표시 및 사용자 상호 작용 처리를 담당합니다. 컨트롤러: 모델과 뷰 간의 상호 작용을 조정하고 사용자 요청과 비즈니스 로직을 관리합니다. PHPMVC 아키텍처 phpMVC 아키텍처는 전통적인 MVC 패턴을 따르지만 언어별 기능도 도입합니다. 다음은 PHPMVC입니다.

CodeIgniter 프레임워크에서 데이터베이스 쿼리 빌더(QueryBuilder)를 사용하는 방법 소개: CodeIgniter는 웹 애플리케이션 개발에서 개발자를 지원하기 위해 많은 강력한 도구와 라이브러리를 제공하는 경량 PHP 프레임워크입니다. 가장 인상적인 기능 중 하나는 데이터베이스 쿼리 문을 작성하고 실행하는 간결하고 강력한 방법을 제공하는 데이터베이스 쿼리 빌더(QueryBuilder)입니다. 이번 글에서는 Co 사용법을 소개하겠습니다.

웹 애플리케이션이 계속 발전함에 따라 애플리케이션을 보다 빠르고 효율적으로 개발하는 것이 중요합니다. 그리고 RESTful API는 웹 애플리케이션에서 널리 사용되기 때문에 개발자는 RESTful API를 생성하고 구현하는 방법을 이해하는 것이 필요합니다. 이번 글에서는 CodeIgniter 프레임워크를 사용하여 MVC 패턴과 RESTful API를 구현하는 방법에 대해 설명합니다. MVC 패턴 MVC 소개(Model-Vie

모바일 인터넷의 발전으로 인스턴트 메시징이 점점 더 중요해지고 대중화되었습니다. 많은 기업에서 라이브 채팅은 비즈니스 문제를 빠르고 효과적으로 해결할 수 있는 편리한 커뮤니케이션 방법을 제공하는 커뮤니케이션 서비스에 가깝습니다. 이를 바탕으로 이 기사에서는 PHP 프레임워크 CodeIgniter를 사용하여 실시간 채팅 애플리케이션을 개발하는 방법을 소개합니다. CodeIgniter 프레임워크 이해 CodeIgniter는 개발자가 빠르게 작업할 수 있도록 일련의 간단한 도구와 라이브러리를 제공하는 경량 PHP 프레임워크입니다.

MVC 아키텍처(Model-View-Controller)는 코드를 구성하고 WEB 애플리케이션 개발을 단순화하기 위한 명확한 구조를 제공하기 때문에 PHP 개발에서 가장 널리 사용되는 패턴 중 하나입니다. 기본 MVC 원칙은 대부분의 웹 애플리케이션에 충분하지만 복잡한 데이터를 처리하거나 고급 기능을 구현해야 하는 애플리케이션에는 몇 가지 제한 사항이 있습니다. 모델 계층 분리 모델 계층을 분리하는 것은 고급 MVC 아키텍처에서 일반적인 기술입니다. 여기에는 모델 클래스를 더 작은 하위 클래스로 나누는 작업이 포함되며, 각 하위 클래스는 특정 기능에 중점을 둡니다. 예를 들어 전자 상거래 애플리케이션의 경우 기본 모델 클래스를 주문 모델, 제품 모델 및 고객 모델로 나눌 수 있습니다. 이러한 분리는 코드 유지 관리성과 재사용성을 향상시키는 데 도움이 됩니다. 의존성 주입 사용

CodeIgniter는 MVC 아키텍처를 사용하여 신속한 개발을 지원하고 일반적인 작업을 단순화하는 경량 PHP 프레임워크입니다. CodeIgniter5는 프레임워크의 최신 버전이며 많은 새로운 기능과 개선 사항을 제공합니다. 이 기사에서는 CodeIgniter5 프레임워크를 사용하여 간단한 웹 애플리케이션을 구축하는 방법을 소개합니다. 1단계: CodeIgniter5 설치 CodeIgniter5 다운로드 및 설치는 매우 간단합니다. 다음 단계를 따르십시오. 최신 버전을 다운로드하세요.
