PHP의 포함 페이지 경로 문제에 대한 솔루션

黄舟
풀어 주다: 2023-03-11 12:00:01
원래의
1961명이 탐색했습니다.


처음 phpincludeinclude files을 사용하기 시작했을 때 아무런 문제도 발견하지 못했습니다.
천천히, 매우 심각한 문제를 발견했습니다. 예를 들면 1에서

<web>(网站根目录)
  ├<A>文件夹
  │ │
  │ └1.php
  ├<B>文件夹
  │ │
  │ └2.php
  └index.php
로그인 후 복사


입니다. php B 디렉토리에 2.php 파일을 추가하려면 include("../B/2.php");를 사용하세요. 물론 1.php 파일을 실행하면 문제가 발생할 수 있습니다. ../B/2.php 파일을 찾을 수 없습니다. Index.php는 1.을 참조합니다.
1.php를 index.php로 컴파일하여 실행하면 1.php가 index.php와 같은 웹사이트의 루트 디렉터리에 위치하게 됩니다.
하지만 잊지 마세요. 1.php에 코드 조각을 포함시키세요. include("../B /2.php");
"../"무슨 뜻인가요? 상위 디렉토리에는 이제 1.php가 루트 디렉토리에 있는데, 이때 한 단계 위로 올라가면 2.php를 찾을 수 없으므로 여기서 문제가 발생한다. 그러면 어떻게 해결해야 할까요? 많은 사람들이 include("/B/2.php")를 생각할 것입니다. 이것은 좋지도 좋지도 않습니다. php는 우리의 jsp
와 다릅니다. include는 우리가 생각하는 것과 다릅니다. 웹 사이트의 상상된 루트 디렉토리는 현재 디렉토리를 나타내므로 여전히 작동하지 않습니다.
해결책은 없을까요? 물론 상대 경로를 사용할 수 없으므로 대신 절대 경로를 사용할 수 있습니다.
realpath("./")는 다음과 같은 현재 웹 사이트 루트 디렉터리의 절대 경로를 가져오는 데 사용됩니다. c:wampwww 웹 사이트 이름
따라서 include("../B/2.php")를 다음으로 변경할 수 있습니다. include(realpath ("./")."B/2.php");

이 경우 페이지가 어느 디렉터리에 있든 참조할 수 있으므로 걱정할 필요가 없습니다. 더 이상 경로 문제가 없습니다!

위 내용은 PHP의 포함 페이지 경로 문제에 대한 솔루션의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!