웹사이트 개발을 위해 ThinkPHP를 사용하는 과정에서 URL 주소 생성 기능을 자주 사용하게 됩니다. 기본적으로 ThinkPHP는 URL 주소를 생성할 때 컨트롤러 이름과 메서드 이름 사이에 백슬래시를 추가합니다. 예:
// 生成 URL 地址 $url = url('Index/index'); echo $url; // 输出:/index.php/Index/index.html
그러나 일부 시나리오에서는 백슬래시 없이 URL 주소가 필요할 수 있습니다. 라우팅 점프를 종료합니다. 이 기사에서는 ThinkPHP에서 백슬래시 없이 URL 주소를 생성하는 방법을 소개합니다.
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 주소에는 더 이상 백슬래시가 없습니다.
구성 파일을 수정하는 것 외에도 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!