model(['id' => 'id']입니다. )"."/> model(['id' => 'id']입니다. )".">

>백엔드 개발 >PHP 문제 >thinkphp에서 라우팅을 수정하는 방법은 무엇입니까?

thinkphp에서 라우팅을 수정하는 방법은 무엇입니까?

尊渡假赌尊渡假赌尊渡假赌
尊渡假赌尊渡假赌尊渡假赌원래의
2023-06-06 10:01:46971검색

thinkphp에서 경로를 수정하는 방법은 두 가지가 있습니다. 1. Route.php 파일의 rule() 메서드를 사용하여 뉴스 경로를 기사 경로로 직접 수정합니다. 코드는 "rule('article','index/)입니다. News/index') "; 2. 컨트롤러에서 라우팅 규칙을 동적으로 정의합니다. 코드는 "rule('news/:id', 'index/News/read')->model(['id' => 'ID']) ".

thinkphp에서 라우팅을 수정하는 방법은 무엇입니까?

이 튜토리얼의 운영 체제: Windows 10 시스템, thinkphp6.1.2 버전, Dell G3 컴퓨터.

thinkphp에서는 라우팅 규칙을 정의하여 URL 주소를 사용자 정의하고 해당 컨트롤러 메서드에 전달할 수 있습니다.

라우팅 규칙을 수정하는 방법은 두 가지가 있습니다.

1. 프로젝트 디렉토리 아래 /route 디렉토리에 있는 Route.php 파일에서 직접 수정합니다.

다음은 뉴스 경로를 기사 경로로 수정하는 샘플 코드입니다.

<?php
use think\Route;
// 修改/news路由规则为/article
Route::rule(&#39;article&#39;,&#39;index/News/index&#39;);

위 코드는 ThinkPHP에서 제공하는 rule() 메서드를 호출하고 경로 URL과 컨트롤러 메서드 매개 변수를 전달합니다. 참고:

  • 첫 번째 매개변수는 여기 기사와 같은 라우팅 URL 주소 접미사를 나타냅니다.

  • 두 번째 매개변수는 경로가 가리키는 컨트롤러의 경로를 나타냅니다. 예를 들어 index/News/index를 가리킵니다.

2. 컨트롤러에서 라우팅 규칙을 동적으로 정의합니다. 이 방법은 일반적으로 프로그램 런타임 중 변경 사항에 따라 라우팅 규칙을 동적으로 생성하는 데 사용됩니다.

다음은 클로저 함수를 정의하여 라우팅 규칙을 동적으로 생성하는 샘플 코드입니다.

<?php
namespace app\index\controller;
use think\Route;
class Index
{   
    public function index()
    {   
        // 动态生成路由规则
        Route::rule(&#39;news/:id&#39;, &#39;index/News/read&#39;)->model([&#39;id&#39; => &#39;id&#39;]);
        return "动态路由规则生成成功";
    }
}

위 코드는 Index 컨트롤러의 index 메서드에 액세스할 때 news/:id 라우팅 규칙을 index에 동적으로 매핑합니다. /News/컨트롤러 메소드를 읽고 모델 바인딩을 사용하여 매개변수 바인딩 시 자동으로 SQL 쿼리 문을 생성합니다.

위 내용은 thinkphp에서 라우팅을 수정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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