Ticket #1052 (assigned task)
"Tatter Framework" 기본 구조 작성
| Reported by: | daybreaker | Owned by: | daybreaker |
|---|---|---|---|
| Priority: | major | Milestone: | 2.0.0 |
| Component: | Core | Version: | 2.0 |
| Keywords: | framework orm cache data backend | Cc: | |
| Release: |
Change History
comment:2 Changed 5 years ago by daybreaker
Changeset: [6408/old_svn]
#1052: interface 기본 구조 잡기
comment:3 Changed 5 years ago by daybreaker
Changeset: [6409/old_svn]
#1052: 좀더 구체적인 실행 과정 설명
comment:7 Changed 5 years ago by daybreaker
Changeset: [6448/old_svn]
#1052: framework 구조 잡기
comment:8 follow-up: ↓ 11 Changed 5 years ago by daybreaker
Changeset: [6449/old_svn]
#1052: 작업 중..
comment:9 Changed 5 years ago by daybreaker
Changeset: [6450/old_svn]
#1052: minor fix
comment:10 Changed 5 years ago by daybreaker
Changeset: [6451/old_svn]
#1052: mysql adapter 기본 예외처리 추가
comment:11 in reply to: ↑ 8 Changed 5 years ago by creorix
Replying to daybreaker:
Changeset: [6449/old_svn]
#1052: 작업 중..
callback도 문자열로 넣어줘야 하니 array_map 안의 escapeString도 따옴표로 감싸주세요 :) (이상한 PHP)
comment:12 Changed 5 years ago by daybreaker
Changeset: [6453/old_svn]
#1052: 작업 중...
comment:13 follow-up: ↓ 14 Changed 5 years ago by daybreaker
Changeset: [6454/old_svn]
#1052: static function 재귀호출 수정
comment:14 in reply to: ↑ 13 ; follow-up: ↓ 15 Changed 5 years ago by creorix
Replying to daybreaker:
Changeset: [6454/old_svn]
#1052: static function 재귀호출 수정
아마 이것도 string으로 'MySQLAdaper::escapeString' 이렇게 넣거나(PHP 5.2.3부터 된다네요) array('MySQLAdaper', 'escapeString') 요렇게 넣는게 정석일 겁니다 =_=
http://www.php.net/manual/en/language.pseudo-types.php#language.types.callback 이쪽에 잘 나와 있습니다 :)
comment:15 in reply to: ↑ 14 Changed 5 years ago by daybreaker
Replying to creorix:
Replying to daybreaker:
Changeset: [6454/old_svn]
#1052: static function 재귀호출 수정
아마 이것도 string으로 'MySQLAdaper::escapeString' 이렇게 넣거나(PHP 5.2.3부터 된다네요) array('MySQLAdaper', 'escapeString') 요렇게 넣는게 정석일 겁니다 =_=
http://www.php.net/manual/en/language.pseudo-types.php#language.types.callback 이쪽에 잘 나와 있습니다 :)
댓글 다신 걸 보고 고친 게 아니라 혼자 테스트해보고 고친 거였는데 원랜 그런 거였군요 =_=; 다음 번 수정에 반영하겠습니다;
comment:16 Changed 5 years ago by creorix
comment:17 Changed 5 years ago by creorix
PostgreSQL에서는 value를 작은 따옴표로 감싸고, DBMS-specific한 escaping function(pg_escape_bytea)이 있는 등 DBMS에 따라 value escaping에도 약간씩 차이가 있습니다. 지금은 단순히 문자열 escaping 함수를 mapping하는 수준으로만 처리해 두셨는데 좀더 포괄적으로 아예 driver단에서 임의의 data type이 들어갔을 때에 대한 처리를 해주는 것이 어떨까 합니다 :)
comment:18 Changed 5 years ago by daybreaker
refs #1052: Debug 클래스 조금 더 구조화시킴
comment:19 Changed 5 years ago by daybreaker
refs #1052: debug.log 파일 위치 변경
comment:20 Changed 5 years ago by inureyes
comment:21 Changed 5 years ago by creorix
refs #1052
- Singleton class 구조 변경
- PHP 5.3 이후에서 지원되는 Late static binding를 사용하지 않고 static method에서 얻을 수 있는 클래스 이름은 static method가 구현된 클래스 이름뿐입니다. ( http://www.php.net/manual/en/language.oop5.late-static-bindings.php)
comment:22 Changed 5 years ago by creorix
refs #1052
- Singleton 클래스를 extend한 클래스에 [6795/old_svn] 반영
- PHP 5.3이 많이 좋아졌는데 5.2는 뭔가 조금 아쉬운 느낌이지요 :(
comment:23 follow-up: ↓ 24 Changed 5 years ago by inureyes
음 런타임시 해석이 아닌가보네요. 그러면 singleton abstract 클래스가 큰 효용이 없을텐데... 상속 클래스마다 getInstance 함수 정의하기는 귀찮으니 현 클래스의 이름을 어떻게 얻을 수 있을지 생각을 해 봅시다 ㅎㅎ
comment:24 in reply to: ↑ 23 Changed 5 years ago by creorix
Replying to inureyes:
음 런타임시 해석이 아닌가보네요. 그러면 singleton abstract 클래스가 큰 효용이 없을텐데... 상속 클래스마다 getInstance 함수 정의하기는 귀찮으니 현 클래스의 이름을 어떻게 얻을 수 있을지 생각을 해 봅시다 ㅎㅎ
깔끔하지 않은 방법으로는 debug_backtrace로 어떤 파일에서 getInstance를 호출했나 확인하고 그 파일을 직접 읽어서(!) 파싱한 뒤 클래스 이름을 알아내는 방법이 있기는 합니다 (...)

Changeset: [6405/old_svn]
#1052: 시작!