>  기사  >  PHP 프레임워크  >  백슬래시 없이 thinkphp URL을 작성하는 방법

백슬래시 없이 thinkphp URL을 작성하는 방법

PHPz
PHPz원래의
2023-04-11 15:05:23719검색

웹사이트 개발을 위해 ThinkPHP를 사용하는 과정에서 URL 주소 생성 기능을 자주 사용하게 됩니다. 기본적으로 ThinkPHP는 URL 주소를 생성할 때 컨트롤러 이름과 메서드 이름 사이에 백슬래시를 추가합니다. 예:

// 生成 URL 地址
$url = url('Index/index');
echo $url;  // 输出:/index.php/Index/index.html

그러나 일부 시나리오에서는 백슬래시 없이 URL 주소가 필요할 수 있습니다. 라우팅 점프를 종료합니다. 이 기사에서는 ThinkPHP에서 백슬래시 없이 URL 주소를 생성하는 방법을 소개합니다.

방법 1: 구성 파일 수정

ThinkPHP의 구성 파일을 수정하여 백슬래시가 없는 URL 주소를 만들 수 있습니다. config.php 配置文件中,找到 url_common_param 항목에서 false로 설정하세요. 샘플 코드는 다음과 같습니다.

// 关闭默认URL模式中控制器与操作之间的分隔符“/”
'url_common_param' => false,

수정 후 URL 주소를 다시 생성하여 테스트할 수 있습니다.

// 生成 URL 地址
$url = url('Index/index');
echo $url;  // 输出:/index.phpIndexindex.html

보시다시피 이때 생성된 URL 주소에는 더 이상 백슬래시가 없습니다.

방법 2: URL 주소 수동 연결

구성 파일을 수정하는 것 외에도 URL 주소를 수동으로 연결하여 백슬래시 없이 효과를 얻을 수도 있습니다. 샘플 코드는 다음과 같습니다.

// 获取当前请求的根URL地址
$baseUrl = request()->root(true);

// 获取控制器名和方法名
$controller = request()->controller();
$action = request()->action();

// 拼接URL地址
$url = $baseUrl . '/' . $controller . $action;

echo $url;

위 코드를 사용하면 백슬래시 없이 URL 주소를 수동으로 연결할 수 있습니다. URL 주소를 수동으로 연결하는 것은 위험과 문제를 가져올 수 있으므로 실제 응용에서는 주의해서 사용해야 한다는 점에 유의해야 합니다.

간단히 말하면 위의 두 가지 방법은 ThinkPHP에서 백슬래시 없이 URL 주소를 생성할 수 있습니다. 특정 애플리케이션에서는 실제 상황에 따라 URL 주소를 생성하는 적절한 방법을 선택할 수 있습니다.

위 내용은 백슬래시 없이 thinkphp URL을 작성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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