이 기사의 예에서는 PHP가 도메인 이름과 관련된 현재 디렉토리를 얻는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 세부 내용은 다음과 같습니다.
http://127.0.0.1/dev/classd/index.php/download
예를 들어, 이 주소를 사용하여 사이트 내에서 baseurl이라는 링크를 생성하는 데 사용할 빨간색 영역의 주소를 가져오고 싶습니다.
$_SERVER['SCRIPT_NAME']을 사용하세요. $_SERVER['SCRIPT_NAME']은 현재 액세스 중인 PHP 파일의 상대 경로입니다.
$_SERVER['SCRIPT_NAME']에서 디렉터리 부분을 가져오고 dirname 함수에서 가능한 백슬래시 문제를 바꿉니다.
비었을 때 사용할 수 있는 일반 값 반환 보장
이렇게 하면 정상적으로 /dev/classd/ 디렉터리 주소를 얻을 수 있습니다.
그런데 Zend Framework의 baseUrl() 함수를 살펴보니 같은 함수에 많은 코드를 사용했다는 것을 알 수가 없을 정도로 많이 보였습니다. $_SERVER에서 많은 것들이 얻어지고, 2~3개의 클래스 후에 최종적으로 4~5개의 메소드가 현재 PHP 파일을 가져오는 중간의 3줄을 제외하고는 쓸모가 없습니다. 무의미한 처리, ZF 이미 충분히 느리게 실행되고 있습니다. 이것은 무엇을 의미합니까? 관심 있는 친구들이 연구해 볼 수 있습니다.
이 기사가 모든 사람의 PHP 프로그래밍 설계에 도움이 되기를 바랍니다.