common.php 파일 공부 중인데... 채택완료
$extend_file = array(); $tmp = dir(G5_EXTEND_PATH); while ($entry = $tmp->read()) { // php 파일만 include 함 if (preg_match("/(\.php)$/i", $entry)) $extend_file[] = $entry; }
if(!empty($extend_file) && is_array($extend_file)) { natsort($extend_file);
foreach($extend_file as $file) { include_once(G5_EXTEND_PATH.'/'.$file); } } unset($extend_file);
위 밑줄 친 코드 의미 좀 해석 부탁드려요.
앞에 2개가 선행묶음인지, 아니면 뒤 2개가 한 선행묶음인지?
답변 1개
우선
$tmp->read()
이것은
$tmp로 생성된 객체의 인스턴스변수에
read()라는 메소드를 실행하는게 우선이고,
그 결과 값을
$entry 에 담으라는 것입니다.
while( 참) {
// 참일때만 실행
}
php 에서 조건문에 참이 되는경우는
true
1이상의 숫자
문자
객체
거짓이 되는경우
false
0
공백
null
이라고 보시면 됩니다.
다시 정리하면
while ($entry = $tmp->read()) {
}
이것은
우리가 흔히 사용하는
while ($row = sql_fetch($result)) {
}
와 거의 유사한 내용이라고 보시면됩니다
위의 문장을 좀더 접근해서 해석하면
dir()이라는 함수는
디렉토리의 하위경로를 객체로 접근하도록 결과를 전달하는 역할을 합니다.
http://php.net/manual/kr/function.dir.php
G5_EXTEND_PATH
는 config.php 에 define 되어있습니다.
extend 디렉토리 하위의 결과를 읽어서 필요한 내용을 찾는 역할을 하는 문장입니다.
조금 중요한 문장이죠
그누보드에서 확장파일을 만들어서
extend디렉토리에 넣어두면 알아서 인클루드되는 역할을 하는
while문 입니다.
답변에 대한 댓글 3개
열공하시는 열정이 아주 좋습니다!! 화이팅
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
& ( ^ ___________ ^ ) & ==============b