PHP/Python/Ruby

게시물 검색
전체 32건 1 페이지
  • php 내장함수 정리1
    날짜 및 시간 관련함수

    *time()
    --- 현재 시각을 timestamp값으로 구한다.
    -방법: time()
    *date()
    --- 사용자가 지정한 형태로 시간을 표시. 특정시간의 날짜와 요일등을 배열로 리턴한다.
    -방법: date("표시할 시간의 포맷형태","특정한 timestamp값")

    $in_date = date("Y-m-d H:i:s",time()); //date 형식예
    $out_time = strtotime($write_date); //timestamp 값으로 변경

    *mktime()
    --- 지정된 날짜를 timestamp값으로 변환한다.
    -방법: mktime(시,분,초,월,일,년)
    *checkdate()
    --- 날짜와 시간이 올바른 범위 안에 있는지 검사한다.
    -방법: checkdate(월,일,년)
    *getdate()
    --- 특정timestamp값으로 시간,요일,날짜정보를 배열로 반환한다.
    -방법: getdate(timestamp값) 또는 getdate()
    *gettimeofday()
    --- 현재 시스템의 현재 시간 정보를 배열로 리턴한다.
    -방법: gettimeofday()
    *gmmktime()
    --- 그리니치표준 시간으로 지정한 날짜의 timestamp값을 리턴한다.
    -방법: gmmktime(시,분,초,월,일,년)
    *strftime()
    --- 특정한 포맷으로 날짜 정보를 출력하는데 언어를 지정할수 있다.
    -방법: strftime("표시할 시간의 포맷형태","특정시간의 timestamp값")
    *microtime()
    --- 현재시간의 마이크로타임 값과 timestamp값을 표시한다.
    -방법: microtime()
    *localtime()
    --- 현재 서버의 로컬 타임을 표시
    -방법: localtime() 또는 localtime("timestamp값")



    2. 문자열 처리함수
    *addslashes()
    --- 작은따옴표 큰따옴표와 같은 특정문자 앞에 역슬래시 문자를 붙인다.
    -방법: addslashes()
    *stripslashes()
    --- allslashes로 역슬래시 처리된 문자를 원상태로 되돌린다.
    -방법: stripslashes()
    *htmlspecialchars()
    --- HTML코드를 소스 그대로 출력해준다.
    -방법: htmlspecialchars()
    *nl2br()
    --- 문자열에 포함된 개행 문자를 태그로 모두 바꿔준다.
    -방법: nl2br()
    *echo()
    --- 문자열 출력
    -방법: echo("변수명" 또는 "문자열")
    *sprintf()
    --- 포맷 문자열을 통해 지정해 준 포맷으로 문자열을 표시한다.
    -방법: sprintf("포맷","변수명")
    *printf()
    --- 지정할 수 있는 포맷에 따라 문자열을 출력한다.
    -방법: printf("포맷","변수명")
    *explode()
    --- 문자열을 지정해준 구분자로 분리하여 배열에 저장한다.
    -방법: explode("구분자","문자열인수")
    *implode()
    --- 구분자로 나누어 배열에 담은 문자열을 다시 지정해준 구분자로 연결하여 전체 문자열을 반환한다.
    -방법: implode("구분자",배열변수명)
    *join()
    --- implode()와 동일한 기능을 수행한다.
    -방법: join("/", "배열변수명")
    *split()
    --- 주어진 문자열을 정규표현식의 패턴에 따라 분리하여 배열에 저장한다.
    -방법: implode("정규표현식","문자열")
    *strcmp()
    --- 두개의 문자열을 비교하여 참이면1, 거짓이면 0을 반환한다.
    -방법: strcmp("문자열","문자열") 또는 strcmp("문자열","변수명") 또는 strcmp(변수명, 변수명)
    *substr()
    --- 문자열에서 특정시작 문자부터 길이만큼의 문자열을 추출하여 반환한다.
    -방법: substr("문자열", 시작문자번호, 문자열의 길이)
    *strchr()
    --- 문자열이 처음으로 나타나는 위치부터 끝까지 반환
    -방법: strchr("문자열","찾을 문자열")
    *strstr()
    ---strchr()함수와 동일한 수행을 한다.
    -방법: strstr("문자열","찾을 문자열")
    *strrchr()
    --- 문자열이 마지막으로 나타나는 위치부터 끝까지 반환한다.
    -방법: strrchr("문자열","찾을문자열")
    *strpos()
    --- 문자열 대신 처음으로 나타나는 위치를 숫자로 반환, 이때 숫자는 0부터 시작.
    -방법: strpos("문자열","찾을 문자열")
    *strrpos()
    --- 찾고자 하는 문자열에서 마지막으로 나타나는 위치를 반환한다.
    -방법: strrpos("문자열", "찾을 문자열")
    *strlen()
    --- 문자열의 길이를 반환한다.
    -방법: strlen($변수명) 또는 strlen("문자열")
    *strtolower()
    --- 알파벳 대문자를 모두 소문자로 바꾸어 반환한다.
    -방법: strtolower("문자열")
    *strtoupper()
    --- 알파벳 대문자를 소문자로 바꾸어 반환한다.
    -방법: strtoupper("문자열")
    *ucfirst()
    --- 알파벳 문자열의 첫 글자를 대문자로 반환한다.
    -방법: unfirst("문자열")
    *ucwords()
    --- 알파벳 문자열의 첫 글자를 대문자로 반환한다.
    -방법: ucwords("문자열")
    *strrev()
    --- 인자로 전달한 문자열의 순서를 역전시킨다.
    -방법: strrev("문자열")
    *strtr()
    --- 문자열에서 변경하고자 하는 문자열을 변경할문자열로 1:1 변경해준다.
    -방법: strtr("문자열","변경하고자하는 문자열","변경할 문자열")
    *str_replace
    --- 문자열 중에 변경하고자 하는 문자열을 찾아 변환한다.
    -방법: str_replace("찾을 문자열","변경할 문자열","문자열 원본")
    *chop()
    --- 문자열의 뒷부분의 공백 문자를 제거한 후 반환한다.
    -방법: chop("문자열")
    *trim()
    --- 문자열의 앞과 뒤에 있는 공백을 제거한 후 문자열을 반환한다.
    -방법: trim("문자열")
    *quotemeta()
    --- 메타문자 앞에 역슬래시를 붙인다.
    -방법: quotemeta()
    *ord/chr()
    --- ord()함수는 문자열에서 첫번째 문자에 아스키코드값을 반환하고 chr()함수는 아스키함수에 해당하는 문자를 반환한다.
    -방법: ord("문자열"), chr("아스키값")
    *parse_str()
    --- get방식과 같은 형태의 변수형을 변수와 값으로 받을 수 있게 해준다.
    -방법: parse_str(변수명)



    3.파일관련함수
    *fopen()
    --- 로컬경로의 파일이나 url경로의 파일을 읽기 모드나 쓰기 모드로 열어준다.
    -방법: fopen("절대경로명/파일", "모드")또는 fopen("url주소", "모드")
    *fclose()
    --- fopen으로 열린 파일을 닫는다.
    -방법: fclose($fp)
    *fread()
    --- 파일포인터가 가리키는 파일의 내용을 지정한 크기만큼 읽어 들인다.
    -방법:fread($fp,"읽어들일 바이트")
    *feof()
    --- 현재 파일 포인터가 파일의 끝인지를 알려주는 함수
    -방법: feof($fp)
    *fgets()
    --- 파일을 읽어올때 한줄씩 읽어온다.
    -방법: fgets($fp,"읽어들일 바이트")
    *fputs()
    --- 파일을 a 또는 w 모드로 열어 문자열을 파일에 기록한다.
    -방법: fputs($fp, "문자열")
    *fwirte()
    --- 파일을 기록한다.
    -방법: fwrite($fp, "문자열")
    *fpassthru()
    --- 파일포인터의 현재 위치에서 파일의 끝까지 읽어 들이도록 한다.
    -방법: fpassthru($fp)
    *readfile()
    --- fpassthru와 비슷하지만 fopen()없이 직접 바로 파일을 읽어들일 수 있다. 읽어들인 파일의 절대경로를 포함한다.
    -방법: readfile("파일의 절대경로 또는 상대경로/파일명")
    *fgetc()
    --- 파일로부터 한문자를 읽어들인다.
    -방법: fgetc($fp)
    *filesize()
    --- 파일의 크기를 바이트수로 반환한다.
    -방법: filesize("파일경로/파일명")
    *file_exists()
    --- 파일이름으로 지정한 파일이 존재하는지 검사한다.
    -방법: file_exists("파일경로/파일명")
    *is_file()
    --- 파일이름으로 지정한 이름이 파일면 true를 반환한다.
    -방법: is_file("파일경로/파일명")
    *is_dir()
    --- 파일이름으로 지정한 이름이 디렉토리일경우 true를 반환한다.
    -방법: is_dir("파일경로/파일명")
    *is_link()
    --- 파일이름으로 지정한 이름이 심볼릭 링크일경우 true를 반환한다.
    -방법: is_link("파일경로/파일명")
    *is_escutable()
    --- 파일이름으로 지정한 파일이 실행 가능한 파일이면 true를 반환한다.
    -방법: is_excutable("파일경로/파일명")
    *is_readable()
    --- 파일이름으로 지정한 파일이나 디렉토리가 읽기 가능한경우 true를 반환한다
    -방법: is_readable("파일경로/파일명 또는 디렉토리명")
    *is_writeable()
    --- 파일이름으로 지정한 파일이나 디렉토리가 쓰기 가능한 경우 true를 반환한다
    -방법: is_writeable("파일경로/파일명 또는 디렉토리명")
    *copy()
    --- 파일을 복사하고 제대로 수행이 되면 true를 반환한다.
    -방법: copy("파일경로/복사할 파일명", "파일경로/복사된 파일명")
    *rename()
    --- 파일을 이름을 바꾼다. 제대로 수행이 되면 true를 반환한다.
    -방법: rename("파일경로/변경할 파일명", "파일경로/변경후 파일명")
    *unlink()
    --- 파일을 삭제한다. 제대로 수행될 경우 true를 반환한다.
    -방법: unlink("파일경로/삭제할 파일명")
    *mkdir()
    --- 디렉토리를 생상하고 동시에 권한도 함께 지정할 수 있다.
    -방법: mkdir("경로/디렉토리명")
    *rmdir()
    --- 디렉토리 삭제
    -방법: rmdir("경로/디렉토리명")
    *basename()
    --- 경로명과 파일명을 받아 파일명만을 반환한다.
    -방법: basename("파일경로/파일명")
    *dirname()
    --- 경로명과 파일명을 받아 경로명만을 반환한다.
    -방법: dirname("파일경로/파일명")
    *file()
    --- 줄단위로 읽어서 각 줄으 문자열을 배열로 하여 반환한다.
    -방법: dirname("파일경로/파일명")



    4.디렉토리 관련함수
    *opendir()
    --- 지정한 디렉토리에 대한 핸들을 얻는다.
    -방법: opendir("디렉토리 경로")
    *closedir()
    --- opendir()함수 호출로 열어둔 디렉토리에 대한 핸들을 닫는다.
    -방법: closedir($od)
    *readdir()
    --- 디렉토리에 있는 모든 디렉토리 및 파일들의 이름을 읽어 배열의 형태로 반환
    -방법: readdir($od)
    *rewinddir()
    --- 디렉토리 핸들의 포인터 위치를 제일 처음으로 되돌린다.
    -방법: rewinddir($od)
    *chdir()
    --- 지저한 디렉토리로 바꾼다.
    -방법: chdir("경로명/디렉토리명")
    *dir()
    --- 디렉토리 관련 함수를 사용할 수 있는 클래스
    -방법: dir("경로/디렉토리명")



    5. URL관련함수
    *parse_url()
    --- url을 입력하면 해당 url에 대한 정보를 연관 배열로 저장하여 반환
    -방법: parse_url("URL주소")
    *urlencode()
    --- 데이터를 url인코딩해준다.
    -방법: urlencode("문자열")
    *urldecode()
    --- url을 통해 넘어온 값 중 인코딩된 문자열을 디코딩한다.
    -방법: urldecode("문자열")



    6.변수 및 수학 관련함수
    *gettype()
    --- 변수형을 반환한다.
    -방법: gettype("변수명")
    *settype()
    --- 변수형을 변환한다.
    -방법: settype("변수명", "변수타입")
    *intval()
    --- 변수값을 정수형 값으로 변환
    -방법: intval("변수값")
    *doubleval()
    --- 변수값을 실수형 값으로 변환한다.
    -방법: doubleval("변수값")
    *strval()
    --- 변수를 문자형 값으로 변환한다.
    -방법: strval("변수값")
    *isset()
    --- 변수가 존재하는지 확인한다.
    -방법: isset("변수명")
    *unset()
    --- 변수를 삭제한다.
    -방법: unset("변수명")
    *empty()
    --- 변수에 값이 존재하는지 확인하여 없으면 true를 있으면 false를 반환한다.
    -방법: empty("변수명")
    *is_array()
    --- 변수의 형이 배열인지 확인한다.
    -방법: is_array("변수명")
    *is_double
    --- 변수의 형이 더블형인지 확인한다.
    -방법: is_double("변수명")
    *abs()
    --- 변수의 절대값을 반환
    -방법: abs("변수명")
    *round()
    --- 변수의 반올림한 값을 구한다.
    -방법: round("변수명")
    *ceil()
    --- 변수 값의 무조건 올림 값을 구한다.
    -방법: ceil("변수명")
    *floor()
    --- 변수값의 무조건 내림 값을 구한다.
    -방법: floor("변수명")
    *pow()
    --- 인자 값만큼 제곱승 한 값을 구한다.
    -방법: pow("변수명", "제곱할 횟수")
    *max & min()
    --- 최대값과 최소값을 구한다.
    -방법: max("숫자값", "숫자값",...) min("숫자값", "숫자값",...)



    7.기타 알아두어야 할 함수
    *count()/sizeof()
    --- 배열의 크기를 구한다.
    -방법: count("변수명") sizeof("변수명")
    *each()/list()
    --- 배열의 내용을 출력할때 사용한다.
    -방법: each("배열변수명"), list("배열의 인자를 받을 변수명", "배열의 인자를 받을 변수명"...)
    *end()/next()/reset()
    --- 현재 배열의 포인터를 끝이나 다음으로 이동시킨다. reset은 배열포인터를 다시 처음으로 되돌린다.
    -방법: end("배열변수명") next("배열변수명")
    *exec()
    --- 리눅스 서버의 내부 명령어를 사용하게 한다.
    -방법: exec("리눅스명령어", "결과를 저장할 변수명" ,"에러발생시 저장할 변수명")
    *number_format()
    --- 천단위마다 ","를 붙여준다.
    -방법: number_format("변수명", "소수점자리수", "소수점 표시마크변경", "천단위 표시 마크변경")
    *show_source() / highlight_string()
    --- php파일의 소스를 보여준다.
    -방법: show_source("경로명/파일명") highlight_string("변수명")
    *uniqid()
    --- 유일한 아이디 값을 만들어준다
    -방법: uniqid()…
    작성자최고관리자 시간 03-16 조회 2008
  • php 내장함수 정리2
    abs() 절대값을 리턴한다
    acos() 라디안으로 주어진 값을 아크코사인값을 리턴한다
    addcslashes() 문자열앞에 역슬레쉬를 추가한다
    addslashes() ,",\ 앞에 역슬래쉬를 추가한다
    array() 배열을 만든다
    array_count_values() 배열안의 매게변수와 동일한 값이 몇번들어있는지 리턴한다
    array_flip() 배열의 키와값을 바꾼다
    array_keys() 배열의모든키를 반환한다.
    array_merge() 두개이상의 배열을 합칩니다.
    array_pad() 새로운요소를 추가합니다.
    array_pop() 배열의 마지막요소를 삭제하고 리턴합니다.
    array_push() 배열의 마지막에 하나이상의 요소를 추가합니다.
    array_reverse() 배열을 역순으로 뒤바꿉니다.
    array_shift() 배열의 처음요소를 없애고 리턴한다.
    array_splice() 배열의 일부분을 대체한다.
    array_unshift() 배열맨앞에 하나이상의 요소를 추가합니다.
    array_values() 키값을제외하고 값을 배열로 반환한다
    array_walk() 배열의 모든요소에 함수를 적용한다.
    arsort() 키와값의 관계를 유지하고 값의역순으로 정렬한다
    asin() 라디안값을 아크사인값으로 리턴한다
    asort() 키와값의 관계를 유지하면서 값을 정렬한다.
    atan() 라디안값을 아크탄젠트값으로 리턴한다
    atan2() y/x 의 아크탄젠트값을 리턴한다
    base64_decode() MINE base64로 인코딩된 것을 디코딩한다.
    base64_encode() MINE base64로 인코딩한다
    basename() 파일경로에서 파일이름만 반환한다.
    base_convert() 진법을 변환한다.
    bin2hex() 2진수를 16진수로 반환한다
    bindec() 2진수인 인자를 10진수로 리턴한다
    ceil() 메게변수의 올림값을 리턴한다
    checkdnsrr() 인터넷 호스트 네임이나 IP 어드레스에 대응되는 DNS 레코드를 체크함
    chgrp() 파일그룹을 변경한다.
    chmod() 파일모드를 변경한다.
    chop() 뒤쪽공백을 제거한다.
    chown() 파일소유자를 변환한다.
    chr() 아스키에 해당하는 문자를 리턴한다
    chunk_split() 문자열을 작은 문자열로 분할한다
    clearstatcache() 파일 상태캐시를 삭제한다.
    compact() 변수의 이름과 값을 가지는 배열을 만든다
    convert_cyr_string() 키릴문자셋을 다른문자로 변환한다.
    copy() 파일을 복사한다.
    cos() 코사인값을 리턴한다
    count() 변수의 개수를 리턴합니다.
    crc32() 문자열로된 CRC32 다항식을 계산한다
    crypt() 문자열을 DES 암호화방법으로 암호화한다
    current() 포인터가 가르키는 값을 리턴합니다
    date() 주어진 함수의 타임스탬프를 지정한 포맷으로 변환한다
    decbin() 메게변수 10진수를 2진수로 리턴한다
    dechex() 16진수로 리턴한다
    decoct() 8진수로 리턴한다
    deg2rad() 각도를 동일한 라디안값으로 구한다
    dirname() 주어진 경로의 디렉토리 목록을 반환한다.
    diskfreespace() 디렉토리의 사용가능한 용량을 리턴한다
    doubleval() 변수의 실수(double)값을 구한다
    each() 포인터가 가르키는 키와값을 리턴한다
    echo() 문자열을 출력한다.
    empty() 변수의 설정여부를 리턴한다.
    end() 포인터를 마지막으로 옮긴다.
    exp() 자연대수 2의 arg승을 구한다
    explode() 문자열은 분리해서 배열로반 환한다
    extract() 배열에서 키와값을 변수와값으로 추출한다
    fclose() 열려진 파일을 닫는다.
    feof() 파일포인터가 끝에 있는지 검사한다
    fgetc() 파일포인터의 한문자를 반환한다.
    fgetcsv() 한줄을 읽고 CSV에 맞게 변환한다.
    fgets() 지정된 파일에서 한 줄을 읽어온다
    floor() 내림값을 리턴한다
    getimagesize() gif,jpg,png의 이미지크기를 반환한다
    getrandmax() rand()함수에의한 리턴값의 최대를 리턴한다
    gettype() 인자로 사용된 변수의 타입을 리턴한다
    get_html_translation_table() 내부적으로 사용된 변환테이블을 반환한다
    get_meta_tags() 파일에서 메타테그를 추출해배열로 반환한다
    hexdec() 16진수를 10진수로 리턴한다
    htmlentities() 해당되는 모든문자를 HTML엔티티형태로 변환한다
    htmlspecialchars() 특수문자를 HTML엔티티형태로 바꾼다
    imagearc() 타원을 그린다.
    imagechar() 수평으로 한문자를 그린다
    imagecolorallocate() 이미지에 색을 할당한다
    imagecolorat() 이미지 픽셀의 색을 리턴한다
    imagecolorclosest() 비슷한 색을 리턴한다
    imagecolorexact() 특정색과 같은색을 리턴한다
    imagecolorresolve() 같은,대체할수있는 가까운색을 리턴한다
    imagecolorset() index을 지정한 rgb로 대체한다
    imagecolorsforindex() index의 rgb값을 배열로 리턴한다
    imagecolorstotal() 색의 갯수를 리턴한다
    imagecolortransparent() 색을 투명하게 바꾼다
    imagecopyresized() 이미지의 부분을 복사하고 크기조정을 한다
    imagecreate() 새로운 이미지를 생성한다
    imagecreatefromgif() 파일로부터 이미지 id를 리턴한다
    imagedashedline() 점선을 그린다.
    imagedestroy() 이미지id를 없앤다
    imagefill() 색으로 채운다
    imagefilledpolygon() 다각형을 그린다.
    imagefilledrectangle() 직사각형을 그린다
    imagefilltoborder() col색으로채운다
    imagefontheight() 폰트의 높이를 리턴한다
    imagefontwidth() 폰트의 넓이를 리턴한다.
    imagegif() 브라우저나 파일로 gif형식으로 출력한다
    imageinterlace() 인터레스의 기능을 on,off한다
    imageline() 선을 그립니다.
    imageloadfont() 새로운 폰트를 불러온다.
    imagepolygon() 다각형을 그린다
    imagepsbbox() 포스트스크립타입1의 글꼴을 사용해 텍스트경계를지정한다
    imagepsencodefont() 글꼴의 문자 인코딩 벡터를 변경한다
    imagepsfreefont() 포스트스크립타입1폰트를 위해 사용된 메모리를해제한다
    imagepsloadfont() 파일로부터 포스트스크립타입1글꼴을 로드한다
    imagepstext() 이미지에 포스트스크립타입1글꼴로 문자열을 그린다
    imagerectangle() 사각형을 그린다
    imagesetpixel() 지정된 좌표에 픽셀 한개를 출력한다
    imagestring() 문자열을 가로로 그린다
    imagestringup() 문자열을 세로로 그린다
    imagesx() 이미지의 가로크기를 구한다
    imagesy() 이미지의 세로크기를 구한다
    ImageTTFBBox() 트루타입글꼴의 경계 영역을 계산해 반환한다
    ImageTTFText() 트루타입글꼴로 문자열을 출력한다
    implode() 지정된문자를포함해 배열을 하나의 문자열로 연결한다
    intval() 변수가 가지고 있는 정수값을 리턴한다
    in_array() 배열에서 needle을 찾아서 있으면 true, 없으면 false를 리턴한다
    isset() 변수의 설정 여부 확인
    is_array() 배열여부 확인
    is_double () 인자의 타입이 Double형배열인지 확인
    is_float() 인자의 타입이 float형인지 확인
    is_int() 인자의 타입이 int형인지 확인
    is_integer () 인자의 타입이 integer형인지 확인
    is_long() 인자의 타입이 long형인지 확인
    is_object() 인자가 객체인지 확인
    is_real() 인자의 타입이 double형인지 확인
    is_string() 인자로 사용된 변수가 문자열인지 확인
    join() impolde()함수와 동일
    key() 포인터가 가르키는 위치의 키값을 리턴한다
    krsort() 배열을 키값의 역순으로 정렬합니다.
    ksort() 배열의키값을기준으로 정렬합니다.
    list() 변수를 배열처럼 사용한다
    log() 자연로그값을 리턴한다
    log10() 상용로그값을 리턴한다
    ltrim() 문자열의 앞부분에 있는 공백 문자를 제거한다.
    max() 인자들중 가장큰 값을 리턴한다
    md5() 문자열의 MD5 해시를 계산한다
    metaphone() 문자열의 메타폰키를 계산한다
    min() 인자들중 가장작은값을 리턴한다
    mktime() 주어진 날짜를 타임스탬프로 변환한다.
    mt_getrandmax() mt_rand()에 의해 리턴될 수 있는 최대값을 리턴한다
    mt_rand() 난수를 리턴한다
    mt_srand() 난수발생기를 초기화한다
    mysql_affected_rows() 최근 궈리작업으로 처리된 행의 수를 구한다.
    mysql_change_user() 사용자를 변경한다.
    mysql_close() 연결을 닫는다.
    mysql_connect() 서버에 접속한다.
    mysql_create_db 데이터베이스를 생성한다.
    mysql_data_seek() 내부적인 결과 포인트를 이동한다.
    mysql_db_query() 질의를 전송한다.
    mysql_drop_db() 데이터베이스를 삭제한다.
    mysql_fetch_array() 쿼리 결과배열은 한줄씩 리턴한다.
    mysql_fetch_field() 결과로부터 열 정보를 얻어서 객체로 반환한다.
    mysql_fetch_lengths() 결과로부터 가 출력의 길이를 반환한다.
    mysql_fetch_object() 행의 결과를 객체로 반환한다.
    mysql_fetch_row() 쿼리결과를 한행씩 스칼라 배열로 리턴한다.
    mysql_field_flags() 특정 필드의 flag 들을 구한다
    mysql_field_len() 특정 필드의 길이를 리턴한다.
    mysql_field_name() 결과로부터 특정 필드 이름을 반환한다.
    mysql_field_seek() 특정 필드의 오프셋으로 위치를 이동한다.
    mysql_field_table() 특정 필드의 table의 이름을 리턴한다
    mysql_field_type() 특정 필드의 type을 리턴한다
    mysql_free_result() 인자값을 메모리에서 지웁니다.
    mysql_insert_id() 삽입에 의해 생성된 인덱스넘버를 리턴한다
    mysql_list_dbs() DB 리스트를 구한다.
    mysql_list_fields () 필드의 리스트를 구한다.
    mysql_list_tables() DB내의 테이블 리스트의 포인터를 리턴한다.
    mysql_num_fields() 쿼리결과내의 필두수를 리턴한다.
    mysql_num_rows() 질의결과의 행수를 리턴한다.
    mysql_pconnect() 디비서버에 지속적인 연결을한다.
    mysql_query() 질의 보낸다.
    mysql_result() 결과에서 데이터를 구한다.
    mysql_select_db() 사용할 디비를 선택한다.
    mysql_tablename() 테이블명을 리턴한다.
    next() 배열의 다음포인터로 이동하여 값을 리턴한다
    nl2br() 개행문자를 태그로 변환한다.
    number_format() 수의 주어진 일정한 형식으로 리턴한다
    octdec() 8진수를 10진수로 리턴한다
    ord() 문자열에 있는 첫번째 문자의 ASCII 코드 값을 변환한다.
    parse_str() 문자열을 변수로 해석한다
    parse_url() URL을 해석해서 각 구성요소를 반환한다.
    pi() 파이값을 구한다
    pos() 배열릐 포인터가 가르키는 값을 리턴한다
    pow() base의 exp승을 리턴한다
    prev() 포인터를 앞으로 이동한후 값을 리턴한다
    print() 문자열을 출력
    printf() 지정된 형식에 맞게 문자열을 출력한다.
    quoted_printable_decode() 문자열을 8비트 문자열로 변환한다.
    quotemeta() 문자열에 .\\+*?[^]($)등의 메타문자앞에\를추가한다
    rand() 난수를 발생한다
    range() low부터 high까지의 정수들의 배열을 리턴한다
    rawurldecode() URL로 인코딩된문자열을 디코딩한다
    rawurlencode() RFC1738에 따라서 URL을 인코딩한다.
    reset() 배열의 포인터를 맨처음으로 이동하여 값을 리턴한다
    round() 반올림값을 리턴한다
    rsort() 배열의 값을 기준으로 역순정렬합니다
    rtrim() 문자열 끝에 있는 공백 문자, 개행문자를 제거한다.
    session_decode() 암호화된 문자열을 세션데이터로 해석한다
    session_destroy() 생성된 모든 세션을 파괴한다
    session_encode() 세션 데이터를 문자열로 인코딩한다
    session_id() 세션 아이디를 구하거나 변경한다.
    session_is_registered() 인자가 세션에 등록되었는지 검사
    session_module_name() 현재 세션요소를 구하거나 변경한다
    session_name() 세션의 이름을 설정한다.
    session_register() 현재 세션에 변수들을 등록한다.
    session_save_path() 현재 세션의 저장경로를 구하거나 변경한다
    session_start() Session을 시작
    session_unregister() 등록된 변수를 제거한다.
    setlocale() 지역정보를 저장한다.
    settype() 변수 타입 설정
    shuffle() 배열을 랜덤하게 섞는다
    similar_text() 두 문자열사이의 유사성을 계산한다
    sin() 사인값을 리턴한다
    sizeof() 배열요소의 갯수를 반환한다.
    sort() 배열을 값을기준으로 순서대로 정렬합니다.
    soundex() 문자열의 soundex키를 계산한다
    sprintf() 지정된 출력형식문자열을 반환한다.
    sqrt() 제곱근을 리턴한다
    srand() 난수발생기를 초기화한다
    strcasecmp() 대소문자를 구분하지 않고 문자열을 비교한다
    strchr() 문자열에서 지정한 문자가 처음위치한부분부터반환한다.
    strcmp() 대소문자를 구분해서 두 문자열을 비교한다.
    strcspn() 마스크가 맞지 않는 초기 세크먼트의 길이를 반환한다
    stripcslashes() addcslashes()로 쿼트된 문자열을 언쿼트한다
    stripslashes() addslashes()로 쿼트된 문자열을 언쿼트한다
    strip_tags() 문자열로 부터 HTML,태그를 제거한다.
    stristr() 대소문자를구별않고 needle과 일치한부분부터리턴한다
    strlen() 문자열의 길이를 반환한다.
    strpos() 문자열에서 특정문자열이 있는 처음위치를 반환한다
    strrchr() 지정한 문자열이 있는 마지막의 위치부터 반환한다
    strrev() 문자열을 뒤집는다.
    strrpos() needle이 마지막으로 나타나는위치를 반환한다.
    strspn() 마스크에 일치하는 초기 세그먼트의 길이를 찾는다.
    strstr() 대소문자를구분하여 needle와 일치하는부분부터 반환한다.
    strtok() 문자열을 토큰화한다.
    strtolower() 문자열을 소문자로 변환한다.
    strtoupper() 영문자를 대문자로 변환한다.
    strtr() 특정문자를 번역한다.
    strval() 값을 문자열로 변환
    str_repeat() 문자열을 지정한 횟수만큼 반복한다.
    str_replace() subject에서 search를 replace로 대체한다.
    substr() 문자열의 일부분을 짤라서 반환한다.
    substr_replace() 문자열 일부만 지정된문자로 치환한다.
    tan() 탄젠트값을 리턴한다
    trim() 문자열의 앞뒤의 공백문자를 제거한다.
    uasort() 키,값을 유지하고 지정함수를 사용해 정렬합니다.
    ucfirst() 첫글자가 알파벳이면 첫문자만 대문자로 변환한다
    ucwords() 문자열의 각 단어의 첫글자를 대문자로 바꾼다.
    uksort() 키,값을 유지하고 지정함수를 이용 키값에 따라 정렬한다.
    unset() 변수의 설정을 해제
    urldecode() 인코딩된 URL문자열을 디코딩한다.
    urlencode() 문자열을 URL 인코딩한다.
    usort() 함수를 배열값에 적용하여 정렬합니다.…
    작성자최고관리자 시간 03-16 조회 1962
  • php 설명 사이트
    http://www.php.net/manual/kr/index.php
    http://kr.php.net/manual/kr/function.explode.php
    한글 설명

    http://php.net/manual/en/function.explode.php
    영어 설명…
    작성자최고관리자 시간 04-30 조회 1757
  • php 내장함수 정리3 DB관련
    mssql_bind 저장프로시져 또는 원격저장프로시져의 인자를 추가한다
    mssql_close 디비연결을 닫는다
    mssql_connect int mssql_connect ( [string servername [, string username [, string password]]])
    mssql_data_seek 결과에서 row_number 로 열을 이동한다.
    mssql_execute 프로시져를 실행한다
    mssql_fetch_array mysql_fetch_array와 동일
    mssql_fetch_assoc 현재 행의 연관 배열에 의해 지정된 설정 결과를 반환합니다
    mssql_fetch_batch 반환 레코드의 다음 배치
    mssql_fetch_field 필드에 정보를 얻음
    개체의 속성이 있음:
    name - 만약 컬럼이 속성이 계산된 #N을 일련 번호로 설정된 함수의 결과면, 컬럼명이다.
    column_source - 칼럼 선택 테이블에서
    max_length - column의 최대 길이
    numeric - 1 숫자 열의 경우 입니다
    type - the column type.

    mssql_fetch_object Fetch row as object
    이 함수가 반환하는 필드 이름은 대소문자를 구별합니다.
    mssql_fetch_row 나열된 행을 배열로 잡는다.
    mssql_fetch_row를 결과 집합 이상 행을 호출 하거나, FALSE에서 다음 행을 반환합니다.
    mssql_field_length
    mssql_field_name field 명 반환
    mssql_field_seek 지정한 필드 오프셋을 탐색
    지정한 필드 오프셋을 찾습니다. mssql_fetch_field ()에 대한 다음 요청이 오프셋 필드를 포함하지 않으면, 이 필드를 반환합니다
    mssql_field_type Gets the type of a field
    mssql_free_result Free result memory
    mssql_free_result() only needs to be called if you are worried about using too much memory while your script is running. All result memory will automatically be freed when the script ends. You may call mssql_free_result() with the result identifier as an argument and the associated result memory will be freed.
    mssql_free_statement Free statement memory
    mssql_free_statement() only needs to be called if you are worried about using too much memory while your script is running. All statement memory will automatically be freed when the script ends. You may call mssql_free_statement() with the statement identifier as an argument and the associated statement memory will be freed.
    mssql_get_last_message Returns the last message from the server
    mssql_guid_string Converts a 16 byte binary GUID to a string
    mssql_init Initializes a stored procedure or a remote stored procedure
    mssql_min_error_severity Sets the lower error severity
    mssql_min_message_severity Sets the lower message severity
    mssql_next_result Move the internal result pointer to the next result
    mssql_num_fields Gets the number of fields in result
    mssql_num_rows Gets the number of rows in result
    mssql_pconnect Returns: A positive MS SQL persistent link identifier on success, or FALSE on error.
    This type of links is therefore called 'persistent'.
    mssql_query Send MS SQL query
    mssql_result returns the contents of one cell from a MS SQL result set. The field argument can be the field's offset, the field's name or the field's table dot field's name (tablename.fieldname). If the column name has been aliased ('select foo as bar from...'), it uses the alias instead of the column name.
    When working on large result sets, you should consider using one of the functions that fetch an entire row (specified below). As these functions return the contents of multiple cells in one function call, they're MUCH quicker than mssql_result(). Also, note that specifying a numeric offset for the field argument is much quicker than specifying a fieldname or tablename.fieldname argument.
    mssql_rows_affected Returns the number of records affected by the query
    mssql_select_db Select MS SQL database…
    작성자최고관리자 시간 03-16 조회 1427
  • pear란 무엇인가.
    PEAR는 PHP Extension and Application Repository의 약자다. 번역하면? PHP 확장과 응용 프로그램 저장소 정도 되겠다.

    PEAR는 재사용 가능한 PHP 컴포넌트를 위한 프레임워크이자 배포 시스템입니다.

    pear 란, java jdbc 같은 용도로 사용하는 놈인데 구지 PEAR가 뭔지 알 필요는 없습니다.
    그냥 좋으니까 쓰면 되는것이죠.
    간단히 이야기하자면 ASP처럼 쉽게 컴포넌트를 사용해 개발할수 있게 하면서 JSP처럼 강력한 효과를 낼 수 있는 획기적인 방법이라고 생각하시면 된다.…
    작성자최고관리자 시간 01-11 조회 1415
  • 아파치와 PHP 버전 정보 숨기기 - 프록시도구에의한 패킷정보 누출 방지
    보안은, 공격자에게 유용한 정보를 차단하는 것부터 시작합니다. 시스템을 공격하려고 하는 공격자는, 먼저 그 시스템이 어떤 OS와 어플리케이션을 쓰고 있는지그리고 그 버전은 어떻게 되는지에 대한 정보부터 수집하게 마련입니다. 소위 '해커들의 언더그라운드'에서는 각 OS의 커널 및 어플리케이션의 버전에 따른 취약점이공유되게 마련입니다. 따라서 어플리케이션을 어떤 것을 쓰는지, 버전은 어떻게 되는지 등의정보는 크래커들에게 아주 유용한 정보가 될 수 있으므로 반드시 차단해야 합니다. 그러면, 버전 정보를 그냥 냅뒀을 경우 어떤 상황이 발생하는지를 예를 들겠습니다.아래 표처럼, 포트 스캐너를 돌리면 그 시스템에 대한 매우 자세한 정보가 노출됩니다. 80World Wide Web HTTPHTTP/1.1 200 OK Date: Fri, 29 Sep 2006 16:12:15 GMT Server: Apache/1.3.37 (Unix) PHP/4.4.4 X-Powered-By: PHP/4.4.4 Set-Cookie: PHPSESSID=f5bbd59d436d7c79a62a90e174d33f3c; path=/ Expires: Mon, 26 Jul 1997 05:00:00 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache cache-contril: no-cache,must-revalidate,max-age=0 Last-Modified: Wed 29 Jun 2005 07:42:36 GMT ETag: "Wed 29 Jun 2005 07:42:36" Connection: close Content-Type: text/html; charset=euc-kr  이 글에서는 아파치와 PHP의 버전 정보를 숨기는 법에 대해 다루겠습니다.  1. 아파치 버전 정보 숨기기 아파치의 경우 httpd.conf 파일에 ServerTokens 라는 옵션이 있습니다.만약 httpd.conf 에 ServerTokens 옵션이 없을 경우에는 추가해 주면 됩니다. 이 옵션의 문법은 다음과 같습니다. ServerTokens Prod[uctOnly] ([] 안은 생략 가능함) 이 문법에서 사용할 수 있는 옵션은 다음과 같습니다. ServerTokens Prod[uctOnly] : Apache 라는 것만 보여줌 ServerTokens Min[imal] : Apache 버전만 보여줌 ServerTokens OS : 아파치 버전과 운영체제를 보여줌 ServerTokens Full (또는 지시하지 않았을 때) : 모두 보여줌 ServerTokens 옵션은 아파치 버전 1.3 이후에서 사용할수 있으며, ProductOnly 키워드는 아파치 버전 1.3.12 이후에 추가되었습니다. 원하는 옵션을 입력한 후 저장합니다. 2. PHP 버전 정보 숨기기 PHP 버전 정보를 숨기려면 php.ini 파일을 열고 아래 옵션을 찾아 바꾸어 주면 됩니다.디폴트 값은 아래와 같이 설정되어 있습니다. expose_php = On 여기서 On을 Off로 바꿔 저장한 후 아파치 데몬을 재시작합니다.그러면, 결과를 확인해 보도록 하겠습니다.  3. 결과 80World Wide Web HTTPHTTP/1.1 200 OK Date: Fri, 29 Sep 2006 16:44:12 GMT Server: Apache Set-Cookie: PHPSESSID=70fe38030c4f8a4897941882b764f46e; path=/ Expires: Mon, 26 Jul 1997 05:00:00 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache cache-contril: no-cache,must-revalidate,max-age=0 Last-Modified: Wed 29 Jun 2005 07:42:36 GMT ETag: "Wed 29 Jun 2005 07:42:36" Connection: close Content-Type: text/html; charset=euc-kr  이처럼, 웹 서버의 종류가 아파치라는 것까지만 나올 뿐, 아파치와 PHP 버전은 표시되지 않는 것을 확인할 수 있습니다. 출처 : http://cafe.naver.com/linuxcare/10046…
    작성자최고관리자 시간 04-10 조회 1279
  • cURL JSON data를 GET , POST로 php파일로 전단 받기
      $url = "http://adsfasdsdafasdfsdaf/?adsfadsf";   $curl = curl_init();  $timeout = 5; // 0으로 하면 시간제한이 없다.  curl_setopt($curl, CURLOPT_URL, $url);curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "GET");  curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);  curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, $timeout);  $result =  curl_exec($curl);   $data = json_decode($result);print_r($data); //echo $data->total_count;  curl_close($curl);exit;   $ch = curl_init();$data_string = "storeName=반갑다&skip=0&cateCode=5&limit=10";$url = "http://adsfasdsdafasdfsdaf/";curl_setopt($ch, CURLOPT_URL,$url);curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  $result = curl_exec($ch);$result = json_decode($result);print_r($result);curl_close ($ch);  exit;…
    작성자최고관리자 시간 01-05 조회 1271
  • PHP 매직함수 - Class
    __sleep, __wakeup과 같이 "__"로 시작하는 매직함수(magic function)는 PHP 클래스 내에서 특수한 목적으로 사용됩니다. 따라서 이 함수들이 가지고 있는 문서화된 매직 기능을 사용할 필요가 없다면 클래스 내에 이 함수들을 정의해서는 안됩니다.

    __sleep

    serialize 함수를 통해 객체를 직렬화할 때 해당 클래스에 매직 함수 __sleep가 정의되어 있는지 확인합니다. 만약 정의되어 있다면 객체를 직렬화하기 전에 __sleep 함수를 수행합니다. 이 함수는 직렬화하기 전에 객체 멤버에 대하여 조작해야 하는 작업, 또는 직렬화하기 전에 미리 수행해야 하는 작업(예를 들어 데이터베이스 연결 종료 등)을 수행할 수 있습니다. __sleep 함수는 직렬화할 객체의 모든 멤버변수의 이름을 변수에 담아 반환합니다.



    class Scott {
    var $error;
    var $svar = array();

    function Scott() {
    $this->svar['Hello'] = "World";
    }

    function __sleep() {
    $this->svar['Hello'] = "Yawn";
    // return list of instance-variables to be serialized
    return array('error', 'svar');
    }
    }

    $x = new Scott();
    print_r($x);
    $y = serialize($x);
    $z = unserialize($y);
    print_r($z);

    __wakeup

    unserialize 함수를 통해 문자열을 객체화할 때 해당 클래스에 매직 함수 __wakeup가 정의되어 있는지 확인합니다. 만약 정의되어 있다면 객체화하기 전에 __wakeup 함수를 수행합니다. 이 함수를 수행할 때 객체화하기 전에 객체를 상대로 수행해야하는 작업, 또는 객체화하기 전에 미리 수행해야 하는 작업(예를 들어 데이터베이스 연결 등)을 수행할 수 있습니다.



    class Scott {
    var $error;
    var $svar = array();

    function Scott() {
    $this->svar['Hello'] = "World";
    }

    function __sleep() {
    $this->svar['Hello'] = "Yawn";
    // return list of instance-variables to be serialized
    return array('error', 'svar');
    }

    function __wakeup() {
    $this->svar['test'] = "I'm here!";
    }
    }

    $x = new Scott();
    print_r($x);
    $y = serialize($x);
    $z = unserialize($y);
    print_r($z);…
    작성자최고관리자 시간 02-07 조회 1118
  • javascript + php 사용시 오류
    javascript + php 사용시 오류


    javascript 소스 안에 php 소스를 사용할 경우

    작성자최고관리자 시간 01-23 조회 1047
  • 템플릿언더바(Template Underscore)
    템플릿언더바(Template Underscore)의 사용 목적은 PHP 프로그램으로부터 프레젠테이션 로직을 효과적으로 분리하는 데 있습니다. 이렇게 함으로써 프로그래머는 페이지출력의 흐름에 따라 PHP코드를 삽입하는 형식 대신에, 페이지구성요소를 모듈화하고 사용할 요소들을 인덱싱하는 형태의 메인프로세스를 작성할 수 있으며, 디자이너에게는 동적데이터 처리를 위한 간결한 인터페이스를 제공하게 됩니다. 웹개발시 MVC 패턴을 적용하는 일반적인 목적은 링크를 참고하시기 바랍니다. 템플릿언더바의 주요 특징 - 템플릿파일을 PHP 파일로 변환하여, 실제 서비스시 PHP 코어 엔진이 변환파일을 실행하여 출력하고, 변환파일과 처리로직의 최적화로 강력한 성능을 발휘합니다.
    - 템플릿 파일 단위의 캐쉬지원으로 회원제 싸이트에서도 부분적인 캐쉬적용이 가능하며, 캐쉬갱신로직과 사용방법이 효율적이고 편리합니다.
    - 자바스크립트 문법을 따르는 표현식 언어 (EL: Expression Language) 를 지원하고 표현식 내에서 PHP 함수를 자유롭게 사용할 수 있습니다.
    - 사용자 정의한 PHP 함수 또는 클래스를 플러그인 파일로 저장만 하면 템플릿내에서 사용할 수 있으며 필요한 만큼만 정확하게 자동 인클루드됩니다.
    - 제어구문의 최적화와 일관성, 극단적으로 단순한 템플릿 명령어셋, 상대경로보정필터, 꼬리말형 주석, 매크로 등 편리한 개발환경을 제공하며 디자이너와의 작업분리에도 효과적입니다.
    - 템플릿 제어구문이나 기타 오류가 있을 때, 가능한 모든 메시지를 출력하여 편리한 디버깅환경을 제공합니다.…
    작성자최고관리자 시간 09-10 조회 977
  • 작성자최고관리자 시간 10-25 조회 956
  • PHP 부모키워드 - Class
    부모클래스의 메쏘드 호출

    보통 부모클래스에서 선언된 메쏘드를 자식클래스에서 재정의하는 이유는 크게 두가지가 있습니다.



    1. 부모클래스 메쏘드를 완전히 새롭게 정의하기 위하여
    2. 부모클래스 메쏘드의 기능에 새로운 기능을 추가하기 위하여

    첫번째 기능은 부모클래스의 메쏘드를 무시하고 메쏘드에 새로운 정의를 함으로써 부모클래스의 메쏘드 정의를 숨기는 것입니다. 그러나 때로는 부모클래스의 메쏘드를 모두 지우는 것보다는 추가적인 기능이 필요한 경우가 있습니다. 이같은 경우에는 부모클래스의 메쏘드와 자식클래스에서 재정의된 메쏘드를 모두 수행하게 될 것입니다. 즉, 재정의된 메쏘드 구문 내에서 부모클래스의 메쏘드를 호출할 수 있어야 하며 필요한 기능만 추가적으로 작성하면 될 것입니다. 이럴 때 부모클래스의 메쏘드를 호출하기 위해서 사용하는 키워드가 parent입니다. 자바에서의 키워드 super와 같은 역할을 하며 이것은 그 메쏘드 호출을 상위클래스로 전달합니다.

    부모키워드 parent는 $this 키워드와 비슷하게 이 클래스의 부모클래스를 나타내는 위치 지정자입니다. 현재 클래스의 부모클래스를 참조해야 되는 경우에는 부모키워드 parent를 사용할 수 있습니다.



    class A {
    function example() {
    echo "클래스 A에 정의된 메쏘드 example. \n";
    }
    }

    class B extends A {
    function example() {
    echo "클래스 B에서 재정의된 메쏘드 example. \n";
    parent::example();
    }
    }

    $b = new B;

    $b->example();

    이 예의 출력결과를 보면 아래와 같이 나타날 것입니다.



    클래스 B에서 재정의된 메쏘드 example.
    클래스 A에 정의된 메쏘드 example.

    앞장 범위연산자에서 설명한 대로 키워드 parent 대신에 extends 다음에 기술된 부모클래스명을 직접 사용해도 됩니다.



    parent::example(); ------> A::example();

    키워드 parent를 써야 될 이유

    위의 예에서 부모클래스를 A가 아닌 A1으로부터 상속받도록 수정하여야 한다면 아래와 같이 extends 다음에 있는 부모클래스명을 변경하는 것으로 모든 작업은 끝나게 됩니다. 만약 parent::example()가 아닌 A::example()라고 작성하였었다면 이 부분도 A1::example()라고 수정하여야 할 것입니다. 결국 수정할 때 손이 더 많이 가야 하는 것이지요. 그러니 부모클래스에 있는 메쏘드에 접근하는 경우라면 키워드 parent를 이용하는 것이 소스 코드를 관리하는데 훨씬 유리할 것입니다.



    class B extends A1 {
    function example() {
    echo "클래스 B에서 재정의된 메쏘드 example. \n";
    parent::example();
    }
    }

    $b = new B;

    $b->example();…
    작성자최고관리자 시간 02-07 조회 927
  • pear 기본사용 - DB편
    http://ceomk.tistory.com/48
    설치 기본 설명 페이지



    작성자최고관리자 시간 01-12 조회 898
  • PHP 객체 생성 - Class
    객체 생성=객체 초기화(object initialization)=인스턴스화(instantiation)

    클래스는 붕어빵을 만드는 틀(= type, =template)과 같은 것으로, 클래스 내에 정의된 메쏘드와 멤버변수를 사용하기 위해서는 틀을 가지고 붕어빵을 만드는 것같이 객체를 생성하여야 합니다. 객체(object)를 초기화하는 방법은 new 연산자를 사용하여 객체를 변수에 인스턴스 시키는 것입니다.



    class Cart {
    var $items; // Items in our shopping cart

    // Add $num articles of $artnr to the cart

    function add_item ($artnr, $num) {
    $this->items[$artnr] += $num;
    }

    // Take $num articles of $artnr out of the cart

    function remove_item ($artnr, $num) {
    if ($this->items[$artnr] > $num) {
    $this->items[$artnr] -= $num;
    return true;
    } else {
    return false;
    }
    }
    }

    $cart = new Cart;
    $cart->add_item("10", 1);

    위와 같이 하면 클래스 Cart에 대한 객체 $cart가 생성됩니다. 객체 함수 add_item()은 장바구니에 품목번호 "10"의 수량을 1개 추가하기 위해 호출됩니다.

    지정연산자 "->"의 의미

    "->"는 객체의 멤버변수 또는 메쏘드를 지정하는데 사용되는 지정연산자입니다. C++ 언어를 접해 본 분은 쉽게 이해하시겠지만, new 연산자로 생성되는 객체를 나타내는 객체명에는 실제로 객체의 멤버(변수 또는 함수)가 존재하는 것이 아니라 객체의 멤버가 존재하는 메모리상에 위치를 나타내는 주소(adress)가 담겨져 있습니다. 이와 같이 객체지향언어에서는 주소를 가지고 멤버를 참조하려면 아래와 같이 지정연산자 "->"를 이용하게 됩니다.



    멤버변수를 참조할 때 : 객체명->변수;
    메쏘드를 참조할 때 : 객체명->함수;

    C++ 언어에서는 "->"를 화살표 멤버 연산자라고 말하며, "->"의 앞쪽에 있는 식별자(여기서는 객체명)가 포인터(pointer; 주소를 의미함)일 때 그 멤버를 참조하기 위한 연산자입니다.

    지역 변수에 초기화된 객체

    객체를 지역변수에 인스턴스할 수 있기 때문에, 클래스를 정의하고 객체를 생성하는 것을 하나의 모듈로 개발할 수 있습니다.



    예제 코드 :

    a."";
    }
    }

    $obj = new test;
    $obj->echo_test();
    }

    class_in_function();
    ?>

    실행 결과 :

    함수 내에 정의된 클래스의 생성자 실행
    함수 내에 정의된 클래스의 멤버변수 $a의 값 = 10

    객체 생성할 때 생성자명을 가변함수로 지정하기



    $classname = "MiniDB";
    $obj = new $classname();

    이 코드는 PHP와 PHP4 모두에서 정상적으로 동작합니다.

    메쏘드명을 변경하기(가변함수)

    PHP의 매뉴얼을 보면 가변함수(variable function)를 지원하는데 이것은 변수명 뒤에 괄호가 왔을 때, PHP는 그 이름을 가진 함수를 찾아 실행하는 것입니다. 이것은 클래스의 메쏘드에서도 그대로 사용할 수 있습니다.



    class test {
    function A() {
    echo "나 A 함수 \n";
    }
    }

    $obj = new test;

    $method = "A";
    $obj->$method();

    이것을 응용하여 같은 실행문으로 A0, A1, A2라는 메쏘드에 번갈아 가면서 접근하려면 역시 가변함수를 사용하면 됩니다.



    class test {
    function A0() {
    echo "나 A0 함수 \n";
    }

    function A1() {
    echo "나 A1 함수 \n";
    }
    function A2() {
    echo "나 A2 함수 \n";
    }
    }

    $obj = new test;

    for ($i=0;$i$method();
    }

    위에 것은 모두 PHP3와 PHP4에서 모두 동작되는 코드입니다. 만약, PHP4에서만 동작시켜도 무방하다면 아래와 같이 중괄호를 이용하면 소스를 간결하게 코딩할 수 있습니다.



    for ($i=0;$i{"a$i"}();
    }

    객체명을 변경하기(가변변수)

    가변변수(Variable Variables)의 유용함은 모두 알고 있겠지만 PHP4에서는 별문제가 없지만 PHP에서 객체변수를 가변변수로 사용하기는 그리 쉽지 않습니다.



    class test {
    var $hello = "hello world";
    }

    $obj = new test;
    $a = "obj";
    echo $$a->hello; // or echo ${$a}->hello;

    PHP에서 위와 같이 작성하여 실행한다면,



    Object
    Parse error: parse error, ...... test.php3 on line 9

    와 같은 에러를 만나게 됩니다. 그러나 PHP4에서는 객체변수에도 가변변수를 제대로 지원하기 시작했습니다. 따라서 위의 예제가 에러없이 잘 실행되지요. 그러면 PHP에서는 객체변수의 이름을 변경할 수 없을까요? 아래와 같이 $GLOBALS 배열을 사용해 보세요. 아무 문제없이 잘 실행될 겁니다.



    class test {
    var $hello = "hello world";
    }

    $obj = new test;
    $a = "obj";
    echo $GLOBALS[$a]->world();

    따라서 PHP3와 PHP4 모두에서 동작되기를 바란다면 $GLOBALS 배열을 이용하여 작성하세요.

    배열구조의 멤버변수를 가변변수로 다루는 방법



    class test {
    var $arr = array();

    function test() {
    $this->arr[0] = 0;
    $this->arr[1] = 1;
    }
    }

    $obj = new test;

    위와 같이 클래스 test에 배열 구조의 멤버변수가 있을 때, 이러한 멤버변수의 배열 요소에 접근하려면 $obj->arr[0]; 와 같이 사용하면 됩니다. 여기서 멤버변수명 "arr"을 가변변수로 처리하려면,



    $prop = "arr";
    $obj->{"$prop"}[0];

    와 같이 가변변수 $prop를 중괄호로 묶어주세요. 여기서 겹따옴표는 생략해도 됩니다. PHP3와 PHP4에서 모두 잘 동작할 것입니다.…
    작성자최고관리자 시간 02-07 조회 892
  • 웹파일 압축기[ZIP] - HOWORLD.COM




    웹파일 압축기[ZIP] - HOWORLD.COM






    작성자최고관리자 시간 01-16 조회 869

회원로그인

Copyright © 2001-2016 ITNANUM. All Rights Reserved..