1. MS-SQL to PHP & MySQL

  • 윈도우에서 MySQL 사용시 대소문자 구분 옵션을 반드시 켜 주어야 한다.
    ~mysql/my.ini :
    lower_case_table_names=0
  • 형변환 시 특별히 주의해야 할 것은
    MS-SQL MySQL
    TEXT LONGTEXT
  • PDO_MSSQL 드라이버를 사용했을 때 Text의 긴 문자열을 가져오면 정확히 4096자에서 잘려나가버린다(mb_strlen 사용시).
    php.ini에서 드라이버 옵션을 변경해야 한다. 다음 부분을 원하는 크기로 변경하라.
    ;odbc 사용시 odbc.defaultlrl = 2147483647 ;mssql 사용시 ; Valid range 0 - 2147483647. Default = 4096. mssql.textlimit = 2147483647 mssql.textsize = 2147483647 ;pdo_mssql에서는 현재 4096 제한을 바꿀 수 없는 버그가 있다. ;http://bugs.php.net/bug.php?id=38805
  • ASP에서와는 달리 기본 날자값이 로케일과 다르게 표현될 것이다.
    그런데 이 형식이 strtotime에서 인식이 안 되 형을 바꿀 수가 없으면 다음과 같이 한다.
    <? $sql = "SELECT CONVERT(VARCHAR(20), regdate, 120) AS newdate FROM bbs"; //(중략)...이제 가져와서 원하는 대로 다루면 된다. date("YmdHis",strtotime($rs["newdate"])); ?>

2. 참고 사이트

3. 1:1 대응표

ASP PHP 출처
FormatDateTime Date [http]link
dateAdd, dateDiff 자작 [http]link
clng(expr) (int) $expr;
WeekDay : 1-7 date("w") : 0-6
dateSerial mktime

1:1 변환해도 상관없는것들
ASP PHP 비고
Len strlen
<> !=
MOD %
lenb strlen 문자열에 필요한 바이트 크기를 반환. (php는 다를 수 있음)

4. 기타사항

function getSelectList1(){ //php에서는 동일한 이름으로 multiple check boxes를 생성할 때 brackets([])를 붙이지 않으면 $_POST 변수를 통해 정상적으로 액세스할 수 없다. //따라서 selectedList1을 selectedList1[]으로 바꾸어 주었는데, 이 경우 document.selectedList1[].options.... 식의 방법으로 접근할 때 //자바스크립트 구문 오류가 발생한다. //이 함수는 그 구문오류를 피해 해당 요소를 선택하기 위한 것이다. var elms = document.mainForm.elements; for(var i=0;i<elms.length;i++){ if(elms[i].name=='selectList1[]') return elms[i]; } }

5. 정규표현식 모음

정규표현식 (eclipse find/replace 기능 기준)
TARGET :
if nnumber="p" then
if nnumber = "p" then
...
FIND : if\s([^\s=]*)\s?=\s?([^\s=]*)\sthen
REPLACE : if(\$$1 == $2){
RESULT :
if($nnumber == "p"){
elseif($nnumber == "p"){
...
FIND : ^([^}]\s?)else
REPLACE : $1}else
WARNING:
}
else
이런 식으로 되어있으면 잘못동작.
FIND : end if
REPLACE : }
TARGET : SQL = "..."
FIND : (^\s*)SQL(\s?)=
REPLACE : $1\$sql$2=
RESULT/TARGET : $sql = "..."
FIND : "\s*$
REPLACE : ";
RESULT : $sql = "...";

TARGET : rs("lendNum")
FIND : ([^"\s]*)\(("[^"]*")\)
REPLACE : \$$1[$2]
RESULT : $rs["lendNum"]

TARGET : $rs["blah")
FIND :(\[[^\]\)]*)\)
REPLACE : $1]
RESULT : $rs["blah"]
powered by Moniwiki | themed by clockoon
last modified 2008-12-30 10:44:13
Processing time 0.4289 sec