2007-09 일단 인덱스 리스트에서...list.php?i=a // 'a'로 시작하는 subject 검색 list.php?i=1 // '1'로 시작하는 subject 검색 list.php?i=ㄱ // 'ㄱ'으로 시작하는 subject 검색이런식으로 검색할 인덱스를 넘겨 줍니다. 그런다음 검색할 인덱스($i)의 상태에 따라서 쿼리문을 만듭니다.. 상당히 무슥하게 하나씩 처리해 주었는데... ㅡㅡ;; 한글의 경우 별다른 방법이 없을듯 하구요.. ( if ~ else를 switch() 로 바꾸는 것이 더 낳을 라나?? ) 주석은 간단하게 달았습니다...제가 가진 게시판의 제목으로 테스트 했을때는 문제가 없었는데.. 혹시 문제가 있다면... 조언을 해주시기 바랍니다..ex> 마지막 'ㅎ'에 대해서 처리하는것 ..
파일이나 문자열 내에 포함되어 있는 특별한 패턴(또는 특별한 조건을 만족하는 문자열)을 검색하기 위해 미리 정의된 다양한 특수 문자들의 조합을 정규식(regular expression)이라 한다. 정규식에서의 특수 문자(special character)는 다음과 같다. (1) ^ (caret) : 라인의 처음이나 문자열의 처음을 표시 예 : ^aaa (문자열의 처음에 aaa를 포함하면 참, 그렇지 않으면 거짓) (2) $ (dollar) : 라인의 끝이나 문자열의 끝을 표시 예 : aaa$ (문자열의 끝에 aaa를 포함하면 참, 그렇지 않으면 거짓) (3) . (period) : 임의의 한 문자를 표시 예 : ^a.c (문자열의 처음에 abc, adc, aZc 등은 참, aa 는 거짓) a..b$ (문자..
2014-10-14 php를 클래스화 해서 사용하다보니 시시때때로 필요한 클래스들을 만들면서 기존에 만들었던것들을 응용해서 만들게 됩니다. 개별적으로 놓고 보면 괜찮지만.. 프로그램 규모가 커지면 같은 클래스를 여기저기서 인스턴스 해서 사용하게 되는 일이 발생하게 되는게 항상 찜찜하게 여겨졌는데.. 아는분의 도움으로 웹서핑중 싱글톤 패턴이란것을 알게되었습니다. 부분적으로는 프로그램에 적용도 하고 있었지만 그걸 뭐라고 부르는지도 모르고 있었거든요^^ 싱글톤 패턴이란, 한번 인스턴스한 오브젝트를 다시 만들지 않고 재사용 하는 프로그래밍 방법론을 말하는데요.. 지난번 클래스로더 얘기가나왔을때 잠깐 보여드렸던 소스를 이렇게 수정하였습니다. class WebApp { function import($module) ..
게시판 본문의 개인정보 숨기기 게시판 본문에 개인정보(전화번호,주민번호,이메일) 이 있을 경우 *(에스터리스크) 처리 하는 방법 - 에스터리스크 처리를 암호화라고 함.위지윅(wyswyg)으로 작성을 했거나 html 태그, URL 등이 있으면 암호화 하는데 어려움이 있다.URL 에 연속 숫자가 있거나 이메일 주소가 있을 수 있기 때문이다.또 html 내용인 경우 xml화 하여 node별로 순차적으로 변환 하는 방법도 생각 해봤으나 아닌 경우도 있다.그래서 생각해낸 것이 html 코드를 지우고 변환 하는 방법이다. $cb_contents; // 원문 if(islogin() == false) { // 비회원이면 /* strip_tags 전 개행태그를 개행 문자로 변환 */ /* 태그를 없에 버리면 문자열이 붙..
json_encode 시 한글 깨짐 현상이 있다.정확히 말하면 깨진 것이 아니고 unicode 로 변환 된 것인데php 5.4 버전에서는 json_array($array,JSON_UNESCAPED_UNICODE) 로 해결 할 수 있다고 하는데안될 경우 아래의 함수를 이용하면 된다. function my_json_encode($arr) { //convmap since 0x80 char codes so it takes all multibyte codes (above ASCII 127). So such characters are being "hidden" from normal json_encoding array_walk_recursive($arr, function (&$item, $key) { if (is_s..
PHP sprintf를 이용한 실수형 연산(float)1. 현상 : mysql 의 필드가 float(13,3) 으로 설정하고 9999999999.001 + 0.001 을 저장하면소수점은 절삭되고 9999999999 만 저장됨. $_f = 9999999999.001 + 0.001; // 9999999999 만 입력됨 강제로 형변환을 해봤지만 동일 현상 발생.sprintf를 이용하면 정상 입력됨 $_f = sprintf("%.3f",9999999999.001 + 0.001); // 9999999999.001 입력됨