MVC의 "V" 문자는 뷰를 의미합니다. 뷰는 요청에 따라 사용자에게 출력을 보내는 역할을 담당합니다. 클래스 보기는 개발 프로세스 속도를 높이는 강력한 방법입니다.
CakePHP의 View Templates 파일은 컨트롤러로부터 데이터를 가져온 후 사용자에게 제대로 표시될 수 있도록 출력을 렌더링합니다. 템플릿에서는 변수, 다양한 제어 구조를 사용할 수 있습니다.
템플릿 파일은 src/Template/에 저장됩니다. 이 디렉토리는 파일을 사용하는 컨트롤러 이름과 해당 작업 이름을 따서 명명됩니다. 예를 들어, Products 컨트롤러의 “view()” 액션에 대한 View파일은 일반적으로 src/Template/Products/view.php에서 찾을 수 있습니다.
간단히 말하면 컨트롤러 이름(ProductsController)은 폴더(Products) 이름과 동일하지만 Controller라는 단어가 없고 컨트롤러(ProductsController)의 작업/메소드 이름(view())은 다음과 같습니다. 뷰파일명(view.php).
뷰 변수는 컨트롤러로부터 값을 받아오는 변수입니다. 뷰 템플릿에서는 원하는 만큼 많은 변수를 사용할 수 있습니다. set() 메서드를 사용하여 뷰의 변수에 값을 전달할 수 있습니다. 이러한 설정된 변수는 작업이 렌더링하는 보기와 레이아웃 모두에서 사용할 수 있습니다. set() 메소드의 구문은 다음과 같습니다.
Cake\View\View::set(string $var, mixed $value)
이 메서드는 변수 이름과 해당 값이라는 두 가지 인수를 사용합니다.
다음 프로그램과 같이 config/routes.php 파일을 변경하세요.
config/routes.php
<?php use Cake\Http\Middleware\CsrfProtectionMiddleware; use Cake\Routing\Route\DashedRoute; use Cake\Routing\RouteBuilder; $routes->setRouteClass(DashedRoute::class); $routes->scope('/', function (RouteBuilder $builder) { // Register scoped middleware for in scopes. $builder->registerMiddleware('csrf', new CsrfProtectionMiddleware([ 'httpOnly' => true, ])); $builder->applyMiddleware('csrf'); $builder->connect('template',['controller'=>'Products','action'=>'view']); $builder->fallbacks(); });
src/Controller/ProductsController.php에서 ProductsController.php 파일을 생성합니다. 컨트롤러 파일에 다음 코드를 복사합니다.
src/Controller/ProductsController.php
<?php declare(strict_types=1); namespace App\Controller; use Cake\Core\Configure; use Cake\Http\Exception\ForbiddenException; use Cake\Http\Exception\NotFoundException; use Cake\Http\Response; use Cake\View\Exception\MissingTemplateException; class ProductsController extends AppController { public function view(){ $this->set('Product_Name','XYZ'); } }
src/Template에 Products 디렉토리를 만들고 해당 폴더 아래에 view.php라는 View 파일을 만듭니다. 해당 파일에 다음 코드를 복사하세요.
Value of variable is: <?php echo $Product_Name; ? >
다음 URL에 접속하여 위의 예시를 실행해 보세요.
http://localhost/cakephp4/template
위 URL은 다음과 같은 출력을 생성합니다.
위 내용은 CakePHP 보기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!