$g4_path와 $g4['path']의 차이점은 뭔가요?

$g4_path와 $g4['path']의 차이점은 뭔가요?

QA

$g4_path와 $g4['path']의 차이점은 뭔가요?

본문

common.php라는 파일을 include_once를 할려고 하니까

include_once(" $g4['path']/common.php")를 안먹히고,

include_once("$g4_path/common.php")가 먹히네요.

 

이 질문에 댓글 쓰기 :

답변 2

$g4['path'] 은 연관배열 이라는 것이고

$g4_path 은 단순한 변수 입니다.

 

$g4_path에 값이 셋팅 되어 있어서 작동하는 거구요

 

$g4['path'] 연관배열은 변수의 모임 으로 생각 하시면 되고

print_r($g4) 해보시면  포함된 변수들이 모두 출력됩니다.

 

위 설명만으로는 저 같은 초보는 잘 이해가...^^;;
저도 가끔 $g4['path'] 넣으면 링크가 안 되는 경우를 당해서 그럴 때마다 그냥 잘 몰라 단순히 /로 해결했는데,
또 어쩔 땐 /만 넣어선 작동이 안 되는 경우가 있더군요.

각각의 변수가 작동하기 위한 조건이 정확히 뭔가요?

include_once(" $g4['path']/common.php") 

include_once("$g4_path/common.php")

위와 같이 하는 것은 둘다 사용법이 틀렸습니다

 

common.php 이전에 $g4[path]나 $g4_path 설정값이 없으므로

그냥 include_once("/common.php"); 이렇게 한 것과 동일합니다

 

첫번재 것이 안되는 이유는

"{$g4['path']}/common.php" 또는 $g4['path'].'/common.php" 이렇게 해야 합니다

 

$g4_path, $g4['path'] 차이점

$g4_path 는 common.php를 불러오기 위해서 _common.php에서 설정하는 값입니다

_common.php 를 사용할 폴더에 만듭니다

예) root에 그누가 설치 되어있을 때

/bbs 폴더의 _common.php 내용

<?

$h4_path="..";

include_once("$g4_path/common.php");

?>

 

/include/mypage 라는 폴더가 있다면 이 폴더에 만들 _common.php 내용

<?

$g4_path="../..";

include_once("$g4_path/common.php");

?>

 

_common.php를 위와 같이 각 폴더에 만들어 놓으면 해당 폴더의 화일들은 모두 동일하게 상단에

include_once("_common.php");

이렇게 해주면 되는 거죠

이렇게 하는 것이 어떤 이점이 있느냐하면  mypage에 있던 화일을 어떤 폴더로 복사/이동 해도

경로수정 없이 그대로 사용가능하게 됩니다

 

$g4['path']는 $g4_path 값을 그냥 $g4 배열변수로 만든 것입니다(common.php에서 작업 수행)

배열변수로 만든 후 $g4_path는 삭제 되어 이후에는 더 이상 사용할 수 없게됩니다

 

요약하면 $g4_path는 common.php include 이전에 사용(include 이후에는 삭제됨)

$g4[path[는 common.php include 이후에 사용하는 변수 입니다

 

_common.php를 include 하지않고 직접 common.php를 include 하려면

아래와 같이 해야 합니다(이렇게 하지않으면 잘못된 방법 어쩌구 하는 에러납니다)

만드는 화일의 위치에 따라 아래처럼

<?

$g4_path=".";

include "$g4_path/common.php"; 또는 include "./common.php";

~~

 

<?

$g4_path="..";

include "$g4_path/common.php"; 또는 "../common.php";

~~

 

설명 마지막 예 경우, 각각 아래처럼 사용해야 된다는 말씀이신가요?

<?
$g4_path=".";
include "$g4_path/common.php";
 
<?
$g4_path=".";
include "./common.php";

 
<?
$g4_path="..";
include "$g4_path/common.php";


<?
$g4_path="..";
include "../common.php";

답변을 작성하시기 전에 로그인 해주세요.
전체 0 | RSS
QA 내용 검색
  • 개별 목록 구성 제목 답변작성자조회작성일
  • 질문이 없습니다.

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT