| 날짜 및 시간관련 함수 | |
|---|---|
| checkdate | 주어진 날짜 및 시간이 타당한지를 검사한다 - 타당하면 true 반환 |
| 정의 : int checkdate(int month, int day, int year); | |
| date | 주어진 옵션에 따른 포맷으로 시간이나 날짜를 출력한다 |
| 정의 : string date(string format, int timestamp); | |
| strftime | 해당 locale을 기준으로 주어진 옵션에 따른 포맷으로 시간이나 날짜를 출력한다 |
| 정의 : string strftime(string format, int timestamp); | |
| mktime | 특정 날짜 및 시간에 해당하는 유닉스 시간(초단위)을 얻는다 |
| 정의 : int mktime(int hour, int minute, int month, int day, int year); | |
| time | 현재의 시간에 해당하는 유닉스 시간을 얻는다 - 현재시간의 timestamp 값을 반환 |
| 정의 : int time(void); | |
| getdate | 날짜 및 시간 정보를 연관배열의 형태로 얻는다 |
| 정의 : array getdate(int timestamp); 연관배열 참조키 | |
| date() 함수 호출시 지정할 수 있는 출력포맷 | ||
|---|---|---|
| 출력형식 | 기능 | 예 |
| Y | 연도를 네 자리수로 출력한다 | 1999 |
| y | 연도를 두 자리수로 출력한다 | 99 |
| M | 월을 세 자리 영문자로 출력한다 | Jan |
| m | 월을 두 자리수로 출력한다 | 01-12 |
| F | 월을 완전한 영문자로 출력한다 | January |
| d | 일자를 두 자리수로 출력한다 | 01-31 |
| j | 일자를 출력하는데 10일 이하는 한 자리수로 출력한다 | 1-9, 10-31 |
| l | 완전한 영문자로 요일을 출력한다 | Friday |
| w | 요일을 한자리 숫자로 출력한다 | 일(0),월(1), ~ ,토(6) |
| D | 세자리수 영문자로 요일을 출력한다 | Fri |
| H | 시간을 24시간제로 출력한다 | 23 |
| h | 시간을 12시간제(오전,오후)로 출력한다 | 11 |
| a | am이나 pm으로 출력한다 | |
| A | AM이나 PM으로 출력한다 | |
| i | 분을 출력한다 | |
| s | 초를 출력한다 | |
| z | 그 해의 몇 번째 일수인지를 출력한다. 이 값은 0부터 시작하므로 윤년이 아닌 경우의 12월 31일은 364로 출력한다 | |
| 문자열 처리 함수 | |
|---|---|
| addslashes | 작은 따옴표(')와 큰 따옴표("), 역슬래쉬(\)와 같은 특정문자앞에 역슬래시(\) 문자를 붙인다 |
| 정의 : string addslashes(string str); | |
| stripslashes | addslashes() 함수를 통해 역슬래쉬 처리가 된 문자를 원 상태로 되돌린다 |
| 정의 : string stripslashes(string str); | |
| htmlspecialchars | HTML 코드를 문자열 그대로 출력한다 |
| - 게시판이나 방명록에 HTML 코드를 허용하지 않고자 할 경우에 form을 통해 넘어오는 문자열을 htmlspecialchars() 함수로 받아 처리하면 된다 | |
| 정의 : string htmlspecialchars(string string); | |
| nl2br | 문자열의 개행문자를 < BR> 태그로 치환한다 |
| - 게시판이나 방명록에서 방문자가 입력한 게시물을 볼때.. 개행문자(enter)를 입력한 경우 그대로 개행되어 보이도록 할때 사용 | |
| 정의 : string nl2br(string string); | |
| echo | 인자로 전해준 문자열을 출력한다 |
| 정의 : echo(string arg1, string[argn]...); | |
| sprintf | 문자열을 지정해준 포맷으로 바꾸어 반환한다 |
| 정의 : sprintf(string format, mixed[args]...); | |
| printf | 문자열을 지정해준 포맷으로 출력한다 |
| 정의 : int printf(string format, mixed[args]...); | |
| explode | 문자열을 구분자로 나누어 배열에 저장한다 |
| 정의 : array explode(string separator, string string); | |
| implode | 배열의 각 원소를 구분자로 연결한 전체 문자열을 반환한다 |
| 정의 : string implode(array pieces, string glue); | |
| join | implode 함수와 동일한 기능을 수행한다 |
| 정의 : string join(array pieces, string glue); | |
| split | 문자열을 정규표현식에 의한 구분자로 나누어 배열에 저장한다 |
| - 구분자로 정규표현식을 사용하기 때문에 explode() 함수보다 정교한 분리가 가능하다 | |
| 정의 : array split(string pattern, string string, int[limit]); | |
| strcmp | 두개의 문자열을 비교한다 |
| - 두 문자열이 일치하면 0을 그렇지 않으면 0이 아닌 값을 반환 | |
| 정의 : int strcmp(string str1, string str2); | |
| substr | 문자열의 일부를 추출한다 |
| 정의 : string substr(string string, int start, int[length]); | |
| strchr | 검색대상 문자열에서 찾고자하는 문자열이 처음으로 나타나는 위치 이후의 문자열을 반환한다 |
| - needle로 주어진 문자열을 찾지 못하면 false를 반환 | |
| 정의 : string strchr(string haystack, string needle); | |
| strrchr | 검색대상 문자열에서 찾고자하는 문자열이 마지막으로 나타나는 위치 이후의 문자열을 반환한다 |
| 정의 : string strrchr(string haystack, string needle); | |
| strpos | 검색대상 문자열에서 찾고자하는 문자열이 처음으로 나타나는 위치를 숫자로 반환한다 |
| 정의 : int strpos(string haystack, string needle, int[offset]); | |
| strrpos | 검색대상 문자열에서 찾고자하는 문자가 마지막으로 나타나는 위치를 숫자로 반환한다 |
| 정의 : int strrpos(string haystack, char needle); | |
| strlen | 문자열의 길이(byte)를 반환한다. 한글은 2bytes로 계산한다 |
| 정의 : int strlen(string str); | |
| strtolower | 알파벳으로 된 문자열을 소문자로 변환한다 |
| 정의 : string strtolower(string str); | |
| strtoupper | 알파벳으로 된 문자열을 대문자로 변환한다 |
| 정의 : string strtoupper(string string); | |
| ucfirst | 알파벳 문자열의 첫글자를 대문자로 변환한다 |
| 정의 : string ucfirst(string str); | |
| ucwords | 알파벳 문자열내 모든 단어의 첫글자를 대문자로 변환한다 |
| 정의 : string ucwords(string str); | |
| strrev | 문자열의 순서를 정반대로 바꾼다 |
| 정의 : string strrev(string string); | |
| strtr | 대상 문자열의 각 문자를 검색하여 지정한 문자로 각각 치환한다 |
| 정의 : string strtr(string str, string from, string to); | |
| str_replace | 문자열을 검색하여 원하는 문자열을 다른 문자열로 바꾼다 |
| 정의 : string str_replace(string needle, string str, string haystack); | |
| chop | 문자열의 뒷부분에 있는 공백문자를 제거한다 |
| 정의 : string chop(string str); | |
| trim | 문자열 앞 부분과 뒷 부분에 있는 공백 문자를 제거한다 |
| 정의 : string trim(string str); | |
| quotemeta | 메타 문자 앞에 역슬래쉬 문자를 덧붙인다 |
| 정의 : int quotemeta(string str); | |
| ord | 문자의 ASCII 코드값을 반환한다 |
| 정의 : int ord(string string); | |
| chr | 특정 ASCII 코드값을 갖는 문자를 반환한다 |
| 정의 : string chr(int ascii); | |
| parse_str | URL을 통해 전달되는 문자열을 파싱하여 변수를 설정한다 |
| 정의 : void parse_str(string str); | |
| 파일 처리 함수 | |
|---|---|
| fopen | 지정한 파일을 연다 |
| - 파일포인터를 반환한다 | |
| 정의 : int fopen(string filename, string mode); | |
| fclose | fopen()으로 연 파일을 닫는다 |
| - 파일닫기가 정상적으로 수행되었으면 true를, 실패했으면 false 반환 | |
| 정의 : int fclose(int fp); | |
| fread | 파일에서 특정 byte수만큼을 읽어들여 문자열로 반환한다 |
| 정의 : string fread(int fp, int length); | |
| fwrite | 파일에 특정 byte수만큼을 쓴다 |
| 정의 : int fwrite(int fp, string string, int[length]); | |
| feof | 파일 포인터의 위치가 파일의 끝인지를 검사한다 |
| - 파일 포인터가 파일의 끝(EOF)이거나 에러가 발생시 true를, 그렇지 않은 경우에는 false를 반환 | |
| 정의 : int feof(int fp); | |
| fgets | 지정한 파일에서 개행 문자나 EOF를 만나기 전까지 특정 byte수만큼 읽어들인다 |
| 정의 : string fgets(int fp, int length); | |
| fputs | 파일에서 특정 byte수만큼을 읽어들여 문자열로 반환한다 |
| 정의 : int fputs(int fp, string str, int[length]); | |
| fpassthru | 파일 포인터가 가리키는 현재의 위치에서 파일의 끝(EOF)까지를 읽어들여 표준 출력장치로 출력한다 |
| 정의 : int fpassthru(int fp); | |
| readfile | 파일을 읽어 표준 출력장치에 출력한다 |
| - 읽어들인 문자열의 크기를 byte수로 반환 | |
| 정의 : int readfile(string filename); | |
| fgetc | 파일로부터 한 문자를 읽어들인다 |
| 정의 : string fgetc(int fp); | |
| filesize | 파일의 크기를 bytes수로 반환한다 |
| 정의 : int filesize(string filename); | |
| file_exists | 파일이 존재하는지를 검사한다 |
| 정의 : int file_exists(string filename); | |
| is_file | 정상적인 파일인지를 검사한다 |
| 정의 : bool is_file(string filename); | |
| is_dir | 디렉토리인지를 검사한다 |
| 정의 : bool is_dir(string filename); | |
| is_link | 심볼릭 링크인지를 검사한다 |
| 정의 : bool is_link(string filename); | |
| is_executable | 실행가능한 파일인지를 검사한다 |
| 정의 : bool is_executable(string filename); | |
| is_readable | 읽기 가능한 파일인지를 검사한다 |
| 정의 : bool is_readable(string filename); | |
| is_writable | 쓰기 가능한 파일인지를 검사한다 |
| 정의 : bool is_writable(string filename); | |
| copy | 파일을 복사한다 |
| 정의 : int copy(string source, string dest); | |
| rename | 파일의 이름을 바꾼다 |
| 정의 : int rename(string oldname, string newname); | |
| unlink | 파일을 삭제한다 |
| - 제대로 수행된 경우 true를 반환 | |
| 정의 : int unlink(string filename); | |
| mkdir | 디렉토리를 생성한다 |
| 정의 : int mkdir(string pathname, int mode); | |
| rmdir | 디렉토리를 삭제한다 |
| 정의 : int rmdir(string dirname); | |
| basename | 파일에 대한 경로명 중 확장자를 포함한 파일 이름만을 반환한다 |
| 정의 : string basename(string path); | |
| dirname | 파일에 대한 경로명 중 디렉토리명만을 반환한다 |
| 정의 : string dirname(string path); | |
| file | 파일의 내용을 읽어 배열로 반환한다 |
| 정의 : array file(string filename); | |
| 파일처리 함수에서 사용되는 파일모드 | |
|---|---|
| 모드 | 기능 |
| 'r' | 파일을 읽기 모드로 연다. 파일 포인터는 해당 파일의 처음에 위치하게 된다. |
| 'r+' | 파일을 읽기와 쓰기 모드로 연다. 파일 포인터는 해당 파일의 처음에 위치하게 된다. |
| 'w' | 파일을 쓰기 모드로 연다. 해당 파일이 이미 존재하면 덮어 씌우고 없으면 새로 생성한다. 파일 포인터는 해당 파일의 처음에 위치하게 된다. |
| 'w+' | 파일을 읽기와 쓰기 모드로 연다. 해당 파일이 이미 존재하면 덮어 씌우고 없으면 새로 생성한다. 파일 포인터는 해당 파일의 처음에 위치하게 된다. |
| 'a' | 파일을 쓰기 모드로 연다. 해당 파일이 존재하지 않으면 새로 만들며 파일의 포인터는 해당 파일의 마지막에 위치하게 된다. |
| 'a+' | 파일을 읽기 및 쓰기 모드로 연다. 해당 파일이 존재하지 않으면 새로 만들며 파일의 포인터는 해당 파일의 마지막에 위치하게 된다. |
| 디렉토리 관련 함수 | |
|---|---|
| opendir | 지정한 디렉토리에 대한 핸들(handle)을 얻는다 |
| 정의 : int opendir(string path); | |
| closedir | opendir() 함수로 연 디렉토리에 대한 핸들을 닫는다 |
| 정의 : void closedir(int dir_handle); | |
| readdir | 디렉토리의 파일 및 하부 디렉토리 이름을 읽어들여 목록의 형태로 반환한다 |
| 정의 : string readdir(int dir_handle); | |
| rewinddir | 디렉토리 핸들을 처음 위치로 되감는다 |
| 정의 : void rewinddir(int dir_handle); | |
| chdir | 디렉토리를 바꾼다 |
| 정의 : int chdir(string directory); | |
| dir | 디렉토리 클래스 객체를 생성한다 |
| 정의 : new dir(string directory); | |
| URL 관련 함수 | |
|---|---|
| parse_url | URL을 파싱한 후 각 부분을 연관 배열에 저장한다 |
| - 파싱 후의 결과는 scheme, host, port, user, pass, path, query, fragment등의 항목으로 나뉘어 배열에 저장된다 | |
| 정의 : array parse_url(string url); | |
| urlencode | URL을 통해 전달되는 query string을 인코딩한다 |
| - 인코딩은 한글 문자처럼 '-', '_', '.'을 제외한 알파벳이 아닌 문자에 한해서 수행되며 인코딩이 되면 % 문자와 두개의 문자로 이루어진 헥사코드로 변환이 되고 공백 문자는 '+'로 변환된다 | |
| 정의 : string urlencode(string str); | |
| urldecode | 인코딩된 query string을 디코딩한다 |
| 정의 : string urldecode(string str); | |
| 변수 관련 함수 | |
|---|---|
| gettype | 변수의 변수형을 얻는다 |
| 정의 : string gettype(mixed var); | |
| settype | 변수의 변수형을 바꾼다 |
| 정의 : int settype(string var, string type); | |
| intval | 변수의 정수형 값을 반환한다 |
| 정의 : int intval(mixed var, int[base]); | |
| doubleval!! | 변수의 실수형 값을 반환한다 |
| 정의 : double doubleval!!(mixed var); | |
| strval | 변수의 문자열 값을 반환한다 |
| 정의 : string strval(mixed var); | |
| isset | 해당 변수가 존재하는지 검사한다 |
| 정의 : int isset(mixed var); | |
| unset | 더 이상 필요없는 변수를 파괴한다 |
| 정의 : int unset(mixed var); | |
| empty | 변수에 값이 할당되어 있는지 검사한다 |
| 정의 : int empty(mixed var); | |
| is_array | 변수가 배열형 변수인지 검사한다 |
| 정의 : int is_array(mixed var); | |
| is_int,is_integer,is_long | 변수가 정수형 변수인지 검사한다 |
| 정의 : int is_int(mixed var); | |
| is_real,is_float,is_double | 변수가 실수형 변수인지 검사한다 |
| 정의 : int is_real(mixed var); | |
| is_string | 변수가 문자열 변수인지 검사한다 |
| 정의 : int is_string(mixed var); | |
| is_object | 변수가 객체형 변수인지 검사한다 |
| 정의 : int is_object(mixed var); | |
| 수학연산 관련 함수 | |
|---|---|
| abs | 변수의 절대값을 반환한다 |
| 정의 : mixed abs(mixed number); | |
| round | 변수를 반올림한 값을 반환한다 |
| 정의 : double round(double val); | |
| ceil | 부동소수형 변수 number보다 큰 정수중 최소값을 반환한다 |
| 정의 : int ceil(float number); | |
| floor | 부동소수형 변수 number보다 작은 정수중 최대값을 반환한다 |
| 정의 : int floor(float number); | |
| pow | base를 지수로 한 제곱승을 반환한다 |
| 정의 : float pow(float base, float exp); | |
| exp | e를 지수로 한 제곱승을 반환한다 |
| 정의 : float exp(float arg); | |
| log | 지수가 e인 자연로그값을 반환한다 |
| 정의 : float log(float arg); | |
| log10 | 지수가 10인 상용로그값을 반환한다 |
| 정의 : float log10(float arg); | |
| pi | 3.14로 표시되는 상수 PI값을 반환한다 |
| 정의 : double pi(void); | |
| sqrt | 제곱근을 반환한다 |
| 정의 : float sqrt(float arg); | |
| max | 인자중 최대값을 반환한다 |
| 정의 : mixed max(mixed arg1, mixed arg2, mixed argn); | |
| min | 인자중 최소값을 반환한다 |
| 정의 : mixed min(mixed arg1, mixed arg2, mixed argn); | |
| number_format | 숫자를 지정한 형식에 맞게 출력한다 |
| 정의 : string number_format(float number,int decimals, string dec_point, string thousands_sep); | |
| rand/srand | 최소와 최대값 사이의 난수를 반환한다 |
| - srand() 함수는 rand() 함수로 난수를 얻기 전에 호출해야 하는 함수이다 | |
| 정의 : int rand([int min], [int max]); void srand(int seed); | |
| sin | 인자의 sin값을 반환한다 |
| 정의 : float sin(float arg); | |
| cos | 인자의 cos값을 반환한다 |
| 정의 : float cos(float arg); | |
| tan | 인자의 tan값을 반환한다 |
| 정의 : float tan(float arg); | |
| 기타 PHP 함수 | |
|---|---|
| getenv | 환경 변수로 저장된 값을 얻는다 |
| 정의 : string getenv(string varname); | |
| getlastmod | 현재문서가 마지막으로 수정된 날짜를 반환한다 |
| - 리턴값은 최종 수정된 시간의 유닉스 시간, 즉 timestamp 값이다 | |
| 정의 : int getlastmod(void); | |
| phpinfo | 서버에 설치된 PHP에 대한 자세한 정보를 출력한다 |
| 정의 : int phpinfo(void); | |
| 메일을 발송한다 | |
| 정의 : bool mail(string to, string subject, string message, string additional_headers); | |
| die | 메시지를 출력하고 스크립트의 실행을 중단한다 |
| 정의 : void die(string message); | |
| exit | 스크립트의 실행을 중단한다 |
| 정의 : void exit(void); | |
| uniqid | UID를 생성한다 |
| - 현재의 시간, 즉 스크립트 실행 시간에 기반을 둔 식별자(UID)를 생성한다. 쇼핑몰이나 회원로그인 등 세션정보가 필요할 때 사용하며, 생성된 식별자는 32개의 문자로 구성되어 있으며 실행시마다 다른 값이 생성된다. | |
| 정의 : int uniqid(string prefix); | |
| PHP에서 참조가능한 주요 환경 변수들 | |
|---|---|
| 환경변수 이름 | 기능 |
| SERVER_SOFTWARE | 웹서버의 이름과 버전 |
| SERVER_NAME | 서버의 호스트 이름 또는 IP 어드레스 |
| GATEWAY_INTERFACE | 서버의 CGI 타입과 개정 레벨을 나타낸다(예: CGI/1.1) |
| SERVER_PROTOCOL | 서버의 프로토콜, 보통 HTTP/1.0이나 HTTP/1.1에 해당 |
| SERVER_PORT | 클라이언트 요청을 보내는 포트번호, 보통 80번 Port |
| REQUEST_METHOD | CGI에서 데이터를 전송하는 방법으로 GET이나 POST |
| PATH_INFO | 스크립트에 대한 경로 정보 |
| PATH_TRANSLATED | PATH_INFO 경로를 실제 물리적 경로로 표시한 것 |
| SCRIPT_NAME | 현재 실행중인 스크립트의 파일이름 |
| QUERY_STRING | GET이나 POST 방식을 통해 전달된 값을 저장 |
| REMOTE_ADDR | 스크립트 실행을 요청한 클라이언트의 IP 주소 |
| REMOTE_HOST | 스크립트 실행을 요청한 클라이언트의 호스트 이름 |
| CONTENT_LENGTH | POST 방식을 통해 전달되는 입력정보의 길이를 표시 |
| HTTP_USER_AGENT | 스크립트 실행을 요청한 브라우저의 종류 및 버전을 표시 |