[ php ] 상대경로와 절대경로, 열린문서의 절대경로, 상대경로, url, uri 나타내기 > php

본문 바로가기
사이트 내 전체검색

php

[ php ] 상대경로와 절대경로, 열린문서의 절대경로, 상대경로, url, uri 나타내기

페이지 정보

작성자 웹지기 댓글 0건 조회 5,531회 작성일 18-11-07 14:28

본문

 1. 절대경로

 - 어떠한 웹페이지나 파일이 가지고 있는 고유한 경로를 말한다.

 - 예를들어 https://funyphp.com, C:\users\document\funyphp.jpg 등을 모두 절대 경로라고한다.

 - 다르게는 '그 위치'라는 개념이라고 말할 수 있는데 주소라고 생각하면 이해하기 더 쉽다.

 - 예를 들어 내가 만약 d:\file 또는 c:\file\img.jpg 등 절대 경로를 알고 있으면 그곳으로 바로 이동하거나 그곳에 있는 파일을 바로 실행 가능하다는 것. 

 - 따라서, 그건 거기에 있으니깐 실행해(가, 가져와 등등)이 된다.


2. 상대경로

 - 상대경로를 풀어서 보면 '현재 위치한 곳을 기준'으로 해서 '그곳의 위치'이다.

 - 다시한번 설명하자면 (Web이라고 기준하에) html 파일이 위치한 폴더를 기준으로 상대적인 경로라는 것.

 - 예를 들어 C:\users\documents\funyphp라는 폴더 밑에 A라는 폴더와 B라는 폴더가 있다고 가정하고, 

   A라는 폴더안에 index.php 파일이 위치한다고 가정하고 현재 내가 B라는 폴더에 위치한다면, 

   A폴더 안에 index.php파일을 가져오기 위해서는 B라는 폴더를 기준으로 계산을 한다.

   따라서 ../A/index.php이라고 하여 index.php로 간다는것.

 - 참고

   / : 루트

   ./ : 현재 위치

   ../ : 현재 위치의 상단 폴더

   ex) index.php가 C:\aaa\index\a에 위치한다면,

        여기서 / 는 C:\

                 ./ 는 C:\aaa\index

                ../ 는 C:\aaa


 - 3가지를 간단히 정리하자면, 

   1  '/'    -> 가장 최상의 디렉토리(Web root)

   2  './'   -> 파일이 위치한 현재 디렉토리

   3  '../'  -> 파일이 위치한 디렉토리의 상위 디렉토리

 - 만약 두단계 상위 디렉토리로 이동하려면

   '../../'

 

[code] 

$file_path = realpath(__FILE__); //php파일의 절대 서버 경로

$file_name = basename(__FILE__); //php파일 이름

$path = str_replace(basename(__FILE__), '', $file_path); //php파일 이름을 뺀 절대 서버 경로

$root_path = $_SERVER['DOCUMENT_ROOT']; // 서버의 ROOT 경로

 

$file_url = preg_replace("'\/[^/]*\.php$'i", "/", $_SERVER['PHP_SELF']); //php파일의 상대경로

$relative_file_url = $file_url.$php_filename; //$php_filename의 상대경로

 

//홈페이지 기본 URI

$url = ($_SERVER['HTTPS'] == 'on')?'https://':'http://';

$url .= ($_SERVER['SERVER_PORT'] != '80')?$_SERVER['HTTP_HOST'].':'.$_SERVER['SERVER_PORT']:$_SERVER['HTTP_HOST']; 

 

$uri = $url.$file_url; //php파일이 있는 웹경로

 

$file_url = $uri.$php_filename;

$file_uri =  $url.$_SERVER['REQUEST_URI'];

[/code]

추천0 비추천0

댓글목록

등록된 댓글이 없습니다.

Total 82건 1 페이지
  • 82 [ php ] foreach() 오류 Invalid argument supplied for foreach()
  • Invalid argument supplied for foreach() 이러한 오류가 발생하는것은 foreach에 검색하는 변수의 값이 비어있기 때문. 어쩔수 없이 빈값인지 확인해야 한다. if(!emepty($변수)) { foreach($변수 AS $key) { echo "샬랄라"; } } 이런식으로 감싸줘야 ㅡㅡ;;
  • 웹지기 06-08 260 0 0 댓글 0
  • 81 [ php ] php 7.2 count() 사용시 에러 조치
  • Severity: Warning --> count(): Parameter must be an array or an object that implements Countable 기존에는 빈값일 때 문제 없었는데, 7.2버젼에서는 빈값이면 0이 아니기 때문에 오류가 발생했다. if(count($num) > 0) { echo "test"; } 이부분에서 문제가 생겨서 다음처럼 수정을 했다. i...
  • 웹지기 06-08 227 0 0 댓글 0
  • 80 [ php ] phpsocket.io 사용법
  • Start php start.php start for debug mode php start.php start -dfor daemon mode php start.php restart Stop php start.php stop Status php start.php status
  • 웹지기 05-08 473 0 0 댓글 0
  • 79 [ php ] php에서 0값의 인식문제
  • $a = 0; if(isset($a) && $a!="") echo "0있어"; else echo "0없어"; 현재는 이러한 형태로 해놓은 상태이다.
  • 웹지기 03-21 426 0 0 댓글 0
  • 78 [ php ] php error root write ( php 오류 root에 저장하기 )
  • php 오류를 root페이지에 저장하고 싶을 때 /home/test/public_html 위 폴더가 root라고 할 때 해당폴더에 저장할 파일명을 아래처럼 적어준다. <?php ini_set("log_errors", 1); ini_set("error_log", "/home/test/public_html/php-error.log"); ?> 간단하게 ...
  • 웹지기 02-21 449 0 0 댓글 2
  • 77 [ php ] htmlspecialchars 와 json 의 관계
  • htmlspecialchars는 특수문자를 HTML 엔티티로 변환해준다. 수행되는 번역 Character Replacement &(ampersand) & "(double quote) ", unles...
  • 웹지기 12-04 690 1 0 댓글 1
  • 76 [ php ] 위도 경도로 직선거리 계산하기
  • 첫번째 위도 경도, 두번째 위도 경도 를 통해서 직선거리 구하기 함수를 만들고 그에 해당하는 위도와 경로를 설정해서 거기를 환산해보면 된다. 값은 거리상의 km이다 소수점 아래 몇짜리까지 사용할 것인지는 알아서 판단하면 된다. <?php /** * Calculates the great-circle distance between two points, with * the Haversine formula. * @param float $latitu...
  • 웹지기 10-03 936 0 0 댓글 0
  • 75 [ php ] php 객체지향 - 클래스 정의, 객체 생성, 접근, 생성자, 소멸자
  • 클래스 정의 - 객체는 class 키워드로 클래스를 정의 - 클래스의 정의에는 클래스이름(대문자 소문자 구분)과 속성 메소드가 포함 - 클래스는 데이터를 저장하는 속성 값을 가지고 있슴. - 데이터를 가공 / 처리하기 위한 메소드를 포함 객체 - 자바와 흡사하고 trait(특성)이 추가 되었슴. - 클래스 외부에서 클래스의 static(고정), constant(상수)에 접근할 때, 클래스 내부에서 상속 계층상의 프로퍼티나 메소드에 접근 할 때는 ->가...
  • 웹지기 05-16 1388 0 0 댓글 0
  • 74 [ php ] php 절차지향 객체지향
  • 절차지향(procedural programming) - 절차지향 프로그램은 위에서 아래로 흐르는 순차적인 처리 - 프로그램 전체가 유기적으로 연결되도록 만드는 프로그램 객체지향(OOP, object-oriented programming) - 객체지향 프로그램은 개발하려는 것을 기능별로 묶어 모듈화로 하드웨어가 중복 연산되지 않게 함 - 모듈을 재활용하는 방식이므로 하드웨어 처리량이 줄어듬 - 데이터와 절차를 하나를 덩어리로 묶어서 사용, 컴퓨터 부품을 하나씩 사서 조립하는것과 같음 ...
  • 웹지기 05-16 1148 0 0 댓글 0
  • 73 [ php ] 스코프 해결 연산자 / Scope Resolution Operator (::)
  • Scope Resolution Operator (Paamayim Nekudotayim이라고도 함) 또는 더 간단한 용어인 이중 콜론은 정적 , 상수 및 재정의 된 속성 또는 클래스의 메서드에 대한 액세스를 허용하는 토큰입니다 . 클래스 정의 외부에서 이러한 항목을 참조 할 때 클래스 이름을 사용하십시오. PHP 5.3.0부터 변수를 사용하여 클래스를 참조 할 수 있습니다. 변수의 값은 키워드가 될 수 없습니다 (예 : 자기 , 부모 및 정적 ). Paamayim Nekudotayim은 처음...
  • 웹지기 05-07 1008 0 0 댓글 0
  • 70 [ php ] php 7.x에 대한 상수 정의( define( ) ) 부분에 관하여.......
  • 이제는 상수도 잘 사용해야 할 것 같습니다. 기존 php 5.x 이하버젼에서는 define('_GNUBOARD_', false); 일때는 defined('_GNUBOARD_') 출력하면 아무것도 뜨지 않았던 걸로 기억을 합니다. 7.X 버젼에서 define('_GNUBOARD_', false); 일때는 defined('_GNUBOARD_') 를 출력해보면 1이라는 숫자가 뜨는군요. define('_TEST_',''); 빈값일때도 1을 출력하는군요 define('_GN...
  • 웹지기 12-18 1634 0 0 댓글 0
  • 69 [ php ] searialize(), unserialize() 배열의 직렬화(일렬화), 일반화, 많은 필드…
  • (PHP 4, PHP 5, PHP 7) serialize — 값의 저장 표현을 생성 설명 string serialize ( mixed $value ) 값의 저장 표현을 생성합니다. 이는 PHP 값을 저장하거나 전달할 때 자료형이나 구조를 잃어버리지 않게 합니다. 일렬화된 문자열을 다시 PHP 변수로 만드려면, unserialize()를 사용합니다. 인수 value 일렬화할 값. serialize()는 resource형을 제외한 모든 형을 다룹니다. 자기 자신을...
  • 웹지기 12-06 1889 0 0 댓글 0
  • 열람중 [ php ] 상대경로와 절대경로, 열린문서의 절대경로, 상대경로, url, uri 나타내기
  • 1. 절대경로 - 어떠한 웹페이지나 파일이 가지고 있는 고유한 경로를 말한다. - 예를들어 https://funyphp.com, C:\users\document\funyphp.jpg 등을 모두 절대 경로라고한다. - 다르게는 '그 위치'라는 개념이라고 말할 수 있는데 주소라고 생각하면 이해하기 더 쉽다. - 예를 들어 내가 만약 d:\file 또는 c:\file\img.jpg 등 절대 경로를 알고 있으면 그곳으로 바로 이동하거나 그곳에 있는 파일을 바로 실행 가능하다는 것. - 따라서, ...
  • 웹지기 11-07 5532 0 0 댓글 0
게시물 검색

회원로그인

접속자집계

오늘
1,353
어제
5,659
최대
24,117
전체
837,372

그누보드5
Copyright © funyphp.com. All rights reserved.