본문 바로가기

php 함수

반응형

[elseif]
함수명 ==>   elseif
사용 형식 ==>   elseif () {}
설 명 ==>  
결과 값 return ==>  

[else]
함수명 ==>   else
사용 형식 ==>   else {}
설 명 ==>  
결과 값 return ==>  

[switch]
함수명 ==>   switch
사용 형식 ==>   switch() {        case : }
설 명 ==>  
결과 값 return ==>  

[for]
함수명 ==>   for
사용 형식 ==>   for( ; ; ) {}
설 명 ==>  
결과 값 return ==>  

[foreach]
함수명 ==>   foreach
사용 형식 ==>   foreach( as ) {}
설 명 ==>  
결과 값 return ==>  

[while]
함수명 ==>   while
사용 형식 ==>   while() {}
설 명 ==>  
결과 값 return ==>  

[return]
함수명 ==>   Return
사용 형식 ==>   Return;
설 명 ==>  
결과 값 return ==>  

[function]
함수명 ==>   function
사용 형식 ==>   function () {}
설 명 ==>  
결과 값 return ==>  

[class]
함수명 ==>   class
사용 형식 ==>   class {}
설 명 ==>  
결과 값 return ==>  

[time]
함수명 ==>   time()
설 명 ==>   현재 시각을 timestamp값으로 구한다.
사용 형식 ==>   time()
결과 값 return ==>  

[date]
함수명 ==>   date()
설 명 ==>   사용자가 지정한 형태로 시간을 표시. 특정시간의 날짜와 요일등을 배열로 리턴한다.
사용 형식 ==>   date("시간포맷","timestamp")
결과 값 return ==>  

[mktime]
함수명 ==>   mktime()
설 명 ==>   지정된 날짜를 timestamp값으로 변환한다.
사용 형식 ==>   mktime(시,분,초,월,일,년)
결과 값 return ==>  

[getimagesize]
함수명 ==>   GetImageSize()
설 명 ==>   이미지파일의 사이즈를 가로,세로로 리턴(array)한다.
사용 형식 ==>   getimagesize("이미지파일")
결과 값 return ==>  

[checkdate]
함수명 ==>   checkdate()
설 명 ==>   날짜와 시간이 올바른 범위 안에 있는지 검사한다.
사용 형식 ==>   checkdate(월,일,년)
결과 값 return ==>  

[getdate]
함수명 ==>   getdate()
설 명 ==>   특정timestamp값으로 시간,요일,날짜정보를 배열로 반환한다.
사용 형식 ==>   getdate(timestamp)
결과 값 return ==>  

[gettimeofday]
함수명 ==>   gettimeofday()
설 명 ==>   현재 시스템의 현재 시간 정보를 배열로 리턴한다.
사용 형식 ==>   gettimeofday()
결과 값 return ==>  

[gmmktime]
함수명 ==>   gmmktime()
설 명 ==>   그리니치표준 시간으로 지정한 날짜의 timestamp값을 리턴한다.
사용 형식 ==>   gmmktime(시,분,초,월,일,년)
결과 값 return ==>  

[strftime]
함수명 ==>   strftime()
설 명 ==>   특정한 포맷으로 날짜 정보를 출력하는데 언어를 지정할수 있다.
사용 형식 ==>   strftime("시간포맷","timestamp")
결과 값 return ==>  

[microtime]
함수명 ==>   microtime()
설 명 ==>   현재시간의 마이크로타임 값과 timestamp값을 표시한다.
사용 형식 ==>   microtime()
결과 값 return ==>  

[localtime]
함수명 ==>   localtime()
설 명 ==>   현재 서버의 로컬 타임을 표시
사용 형식 ==>   localtime("timestamp")
결과 값 return ==>  

[addslashes]
함수명 ==>   addslashes()
설 명 ==>   작은따옴표 큰따옴표와 같은 특정문자 앞에 역슬래시 문자를 붙인다.
사용 형식 ==>   addslashes()
결과 값 return ==>  

[stripslashes]
함수명 ==>   stripslashes()
설 명 ==>   allslashes로 역슬래시 처리된 문자를 원상태로 되돌린다.
사용 형식 ==>   stripslashes()
결과 값 return ==>  

[htmlspecialchars]
함수명 ==>   htmlspecialchars()
설 명 ==>   HTML코드를 소스 그대로 출력해준다.
사용 형식 ==>   htmlspecialchars()
결과 값 return ==>  

[nl2br]
함수명 ==>   nl2br()
설 명 ==>   문자열에 포함된 개행 문자를 <br>태그로 모두 바꿔준다.
사용 형식 ==>   nl2br()
결과 값 return ==>  

[echo]
함수명 ==>   echo();
설 명 ==>   문자열 출력
사용 형식 ==>   echo("변수명" 또는 "문자열")
결과 값 return ==>  

[eregi]
함수명 ==>   eregi();
설 명 ==>   지정 문자열내에서 대소문자 구분없이 문자열 또는 정규식으로 특정 문자 또는 기호,숫자등을 찾을때
사용 형식 ==>   eregi("찾는문자/정규식","지정 문자열")
결과 값 return ==>  

[ereg]
함수명 ==>   ereg();
설 명 ==>   지정 문자열내에서 대소문자를 구분하여 문자열 또는 정규식으로 특정 문자 또는 기호,숫자등을 찾을때
사용 형식 ==>   ereg("찾는문자/정규식","지정 문자열")
결과 값 return ==>  

[eregi_replace]
함수명 ==>   eregi_replace();
설 명 ==>   지정 문자열내에서 대소문자를 구분없이 찾는 문자열 또는 정규식으로 특정 문자열,기호,숫자등을 찾아서 타겟 문자열 형식으로 변환할때
사용 형식 ==>   eregi_replace("찾는문자/정규식","타겟문자열","지정 문자열")
결과 값 return ==>  

[ereg_replace]
함수명 ==>   ereg_place();
설 명 ==>   지정 문자열내에서 대소문자를 구분하여 찾는 문자열/정규식으로 특정 문자열,기호,숫자등을 찾아서 타겟 문자열 형식으로 변환할때
사용 형식 ==>   ereg_replace("찾는문자/정규식","타겟문자열","지정 문자열")
결과 값 return ==>  

[include]
함수명 ==>   include();
설 명 ==>   특정 파일을 소스내에 포함시킬 때.
사용 형식 ==>   include("경로/파일명")
결과 값 return ==>  

[print]
함수명 ==>   pring();
설 명 ==>   문자열 출력
사용 형식 ==>   print("변수명" 또는 "문자열")
결과 값 return ==>  

[sprintf]
함수명 ==>   sprintf()
설 명 ==>   포맷 문자열을 통해 지정해 준 포맷으로 문자열을 표시한다.
사용 형식 ==>   sprintf("포맷","변수명")
결과 값 return ==>  

[printf]
함수명 ==>   printf()
설 명 ==>   지정할 수 있는 포맷에 따라 문자열을 출력한다.
사용 형식 ==>   printf("포맷","변수명")
결과 값 return ==>  

[explode]
함수명 ==>   explode()
설 명 ==>   문자열을 지정해준 구분자로 분리하여 배열에 저장한다.
사용 형식 ==>   explode("구분자","문자열인수")
결과 값 return ==>  

[implode]
함수명 ==>   implode()
설 명 ==>   구분자로 나누어 배열에 담은 문자열을 다시 지정해준 구분자로 연결하여 전체 문자열을 반환한다.
사용 형식 ==>   implode("구분자",배열변수명)
결과 값 return ==>  

[join]
함수명 ==>   join()
설 명 ==>   implode()와 동일한 기능을 수행한다.
사용 형식 ==>   join("/", "배열변수명")
결과 값 return ==>  

[split]
함수명 ==>   split()
설 명 ==>   주어진 문자열을 정규표현식의 패턴에 따라 분리하여 배열에 저장한다.
사용 형식 ==>   implode("정규표현식","문자열")
결과 값 return ==>  

[strcmp]
함수명 ==>   strcmp()
설 명 ==>   두개의 문자열을 비교하여 참이면1, 거짓이면 0을 반환한다.
사용 형식 ==>   strcmp("문자열","문자열") 또는 strcmp("문자열","변수명") 또는 strcmp(변수명, 변수명)
결과 값 return ==>  

[substr]
함수명 ==>   substr()
설 명 ==>   문자열에서 특정시작 문자부터 길이만큼의 문자열을 추출하여 반환한다.
사용 형식 ==>   substr("문자열", 시작문자번호, 문자열의 길이)
결과 값 return ==>  

[exit]
함수명 ==>   exit;
설 명 ==>   PHP의 수행을 중단시킨다.
사용 형식 ==>   exit;
결과 값 return ==>  

[strchr]
함수명 ==>   strchr()
설 명 ==>   문자열이 처음으로 나타나는 위치부터 끝까지 반환
사용 형식 ==>   strchr("문자열","찾을 문자열")
결과 값 return ==>  

[strstr]
함수명 ==>   strstr()
설 명 ==>   strchr()함수와 동일한 수행을 한다.
사용 형식 ==>   strstr("문자열","찾을 문자열")
결과 값 return ==>  

[strrchr]
함수명 ==>   strrchr()
설 명 ==>   문자열이 마지막으로 나타나는 위치부터 끝까지 반환한다.
사용 형식 ==>   strrchr("문자열","찾을문자열")
결과 값 return ==>  

[strpos]
함수명 ==>   strpos()
설 명 ==>   문자열 대신 처음으로 나타나는 위치를 숫자로 반환, 이때 숫자는 0부터 시작.
사용 형식 ==>   strpos("문자열","찾을 문자열")
결과 값 return ==>  

[strrpos]
함수명 ==>   strrpos()
설 명 ==>   찾고자 하는 문자열에서 마지막으로 나타나는 위치를 반환한다.
사용 형식 ==>   strrpos("문자열", "찾을 문자열")

[strlen]
함수명 ==>   strlen()
설 명 ==>   문자열의 길이를 반환한다.
사용 형식 ==>   strlen($변수명) 또는 strlen("문자열")
결과 값 return ==>  

[strtolower]
함수명 ==>   strtolower()
설 명 ==>   알파벳 대문자를 모두 소문자로 바꾸어 반환한다.
사용 형식 ==>   strtolower("문자열")
결과 값 return ==>  

[strtoupper]
함수명 ==>   strtoupper()
설 명 ==>   알파벳 대문자를 소문자로 바꾸어 반환한다.
사용 형식 ==>   strtoupper("문자열")
결과 값 return ==>  

[ucfirst]
함수명 ==>   ucfirst()
설 명 ==>   알파벳 문자열의 첫 글자를 대문자로 반환한다.
사용 형식 ==>   unfirst("문자열")
결과 값 return ==>  

[ucwords]
함수명 ==>   ucwords()
설 명 ==>   알파벳 문자열의 첫 글자를 대문자로 반환한다.
사용 형식 ==>   ucwords("문자열")
결과 값 return ==>  

[strrev]
함수명 ==>   strrev()
설 명 ==>   인자로 전달한 문자열의 순서를 역전시킨다.
사용 형식 ==>   strrev("문자열")
결과 값 return ==>  

[strtr]
함수명 ==>   strtr()
설 명 ==>   문자열에서 변경하고자 하는 문자열을 변경할문자열로 1:1 변경해준다.
사용 형식 ==>   strtr("문자열","변경할문자열","변경할 문자열")
결과 값 return ==>  

[str_replace]
함수명 ==>   str_replace
설 명 ==>   문자열 중에 변경하고자 하는 문자열을 찾아 변환한다.
사용 형식 ==>   str_replace("찾을문자열","변경할문자열","문자열 원본")
결과 값 return ==>  

[chop]
함수명 ==>   chop()
설 명 ==>   문자열의 뒷부분의 공백 문자를 제거한 후 반환한다.
사용 형식 ==>   chop("문자열")
결과 값 return ==>  

[trim]
함수명 ==>   trim()
설 명 ==>   문자열의 앞과 뒤에 있는 공백을 제거한 후 문자열을 반환한다.
사용 형식 ==>   trim("문자열")
결과 값 return ==>  

[quotemeta]
함수명 ==>   quotemeta()
설 명 ==>   메타문자 앞에 역슬래시를 붙인다.
사용 형식 ==>   quotemeta()
결과 값 return ==>  

[chr]
함수명 ==>   chr()
설 명 ==>   아스키함수에 해당하는 문자를 반환한다.
사용 형식 ==>   chr("아스키값")
결과 값 return ==>  

[ord]
함수명 ==>   ord()
설 명 ==>   문자열에서 첫번째 문자에 아스키코드값을 반환한다.
사용 형식 ==>   ord("문자열")
결과 값 return ==>  

[parse_str]
함수명 ==>   parse_str()
설 명 ==>   get방식과 같은 형태의 변수형을 변수와 값으로 받을 수 있게 해준다.
사용 형식 ==>   parse_str(변수명)
결과 값 return ==>  

[fopen]
함수명 ==>   fopen()
설 명 ==>   로컬경로의 파일이나 url경로의 파일을 읽기 모드나 쓰기 모드로 열어준다.
사용 형식 ==>   fopen("절대경로명/파일", "모드"),fopen("url주소", "모드")
결과 값 return ==>  

[fclose]
함수명 ==>   fclose()
설 명 ==>   fopen으로 열린 파일을 닫는다.
사용 형식 ==>   fclose($fp)
결과 값 return ==>  

[fread]
함수명 ==>   fread()
설 명 ==>   파일포인터가 가리키는 파일의 내용을 지정한 크기만큼 읽어 들인다.
사용 형식 ==>   fread($fp,"읽어들일 바이트")
결과 값 return ==>  

[feof]
함수명 ==>   feof()
설 명 ==>   현재 파일 포인터가 파일의 끝인지를 알려주는 함수
사용 형식 ==>   feof($fp)
결과 값 return ==>  

[fgets]
함수명 ==>   fgets()
설 명 ==>   파일을 읽어올때 한줄씩 읽어온다.
사용 형식 ==>   fgets($fp,"읽어들일 바이트")
결과 값 return ==>  

[fputs]
함수명 ==>   fputs()
설 명 ==>   파일을 a 또는 w 모드로 열어 문자열을 파일에 기록한다.
사용 형식 ==>   fputs($fp, "문자열")
결과 값 return ==>  

[fwirte]
함수명 ==>   fwirte()
설 명 ==>   파일을 기록한다.
사용 형식 ==>   fwrite($fp, "문자열")
결과 값 return ==>  

[fpassthru]
함수명 ==>   fpassthru()
설 명 ==>   파일포인터의 현재 위치에서 파일의 끝까지 읽어 들이도록 한다.
사용 형식 ==>   fpassthru($fp)
결과 값 return ==>  

[readfile]
함수명 ==>   readfile()
설 명 ==>   fpassthru와 비슷하지만 fopen()없이 직접 바로 파일을 읽어들일 수 있다. 읽어들인 파일의 절대경로를 포함한다.
사용 형식 ==>   readfile("파일의 절대경로 또는 상대경로/파일명")
결과 값 return ==>  

[fgetc]
함수명 ==>   fgetc()
설 명 ==>   파일로부터 한문자를 읽어들인다.
사용 형식 ==>   fgetc($fp)
결과 값 return ==>  

[filesize]
함수명 ==>   filesize()
설 명 ==>   파일의 크기를 바이트수로 반환한다.
사용 형식 ==>   filesize("파일경로/파일명")
결과 값 return ==>  

[file_exists]
함수명 ==>   file_exists()
설 명 ==>   파일이름으로 지정한 파일이 존재하는지 검사한다.
사용 형식 ==>   file_exists("파일경로/파일명")
결과 값 return ==>  

[is_file]
함수명 ==>   is_file()
설 명 ==>   파일이름으로 지정한 이름이 파일면 true를 반환한다.
사용 형식 ==>   is_file("파일경로/파일명")
결과 값 return ==>  

[is_dir]
함수명 ==>   is_dir()
설 명 ==>   파일이름으로 지정한 이름이 디렉토리일경우 true를 반환한다.
사용 형식 ==>   is_dir("파일경로/파일명")
결과 값 return ==>  

[is_link]
함수명 ==>   is_link()
설 명 ==>   파일이름으로 지정한 이름이 심볼릭 링크일경우 true를 반환한다.
사용 형식 ==>   is_link("파일경로/파일명")
결과 값 return ==>  

[is_escutable]
함수명 ==>   is_escutable()
설 명 ==>   파일이름으로 지정한 파일이 실행 가능한 파일이면 true를 반환한다.
사용 형식 ==>   is_excutable("파일경로/파일명")
결과 값 return ==>  

[is_readable]
함수명 ==>   is_readable()
설 명 ==>   파일이름으로 지정한 파일이나 디렉토리가 읽기 가능한경우 true를 반환한다
사용 형식 ==>   is_readable("파일경로/파일명 또는 디렉토리명")
결과 값 return ==>  

[is_writeable]
함수명 ==>   is_writeable()
설 명 ==>   파일이름으로 지정한 파일이나 디렉토리가 쓰기 가능한 경우 true를 반환한다
사용 형식 ==>   is_writeable("파일경로/파일명 또는 디렉토리명")
결과 값 return ==>  

[copy]
함수명 ==>   copy()
설 명 ==>   파일을 복사하고 제대로 수행이 되면 true를 반환한다.
사용 형식 ==>   copy("파일경로/복사할 파일명", "파일경로/복사된 파일명")
결과 값 return ==>  

[rename]
함수명 ==>   rename()
설 명 ==>   파일을 이름을 바꾼다. 제대로 수행이 되면 true를 반환한다.
사용 형식 ==>   rename("파일경로/변경할 파일명", "파일경로/변경후 파일명")
결과 값 return ==>  

[unlink]
함수명 ==>   unlink()
설 명 ==>   파일을 삭제한다. 제대로 수행될 경우 true를 반환한다.
사용 형식 ==>   unlink("파일경로/삭제할 파일명")
결과 값 return ==>  

[mkdir]
함수명 ==>   mkdir()
설 명 ==>   디렉토리를 생상하고 동시에 권한도 함께 지정할 수 있다.
사용 형식 ==>   mkdir("경로/디렉토리명")
결과 값 return ==>  

[rmdir]
함수명 ==>   rmdir()
설 명 ==>   디렉토리 삭제
사용 형식 ==>   rmdir("경로/디렉토리명")
결과 값 return ==>  

[basename]
함수명 ==>   basename()
설 명 ==>   경로명과 파일명을 받아 파일명만을 반환한다.
사용 형식 ==>   basename("파일경로/파일명")
결과 값 return ==>  

[dirname]
함수명 ==>   dirname()
설 명 ==>   경로명과 파일명을 받아 경로명만을 반환한다.
사용 형식 ==>   dirname("파일경로/파일명")
결과 값 return ==>  

[file]
함수명 ==>   file()
설 명 ==>   줄단위로 읽어서 각 줄으 문자열을 배열로 하여 반환한다.
사용 형식 ==>   dirname("파일경로/파일명")
결과 값 return ==>  

[opendir]
함수명 ==>   opendir()
설 명 ==>   지정한 디렉토리에 대한 핸들을 얻는다.
사용 형식 ==>   opendir("디렉토리 경로")
결과 값 return ==>  

[closedir]
함수명 ==>   closedir()
설 명 ==>   opendir()함수 호출로 열어둔 디렉토리에 대한 핸들을 닫는다.
사용 형식 ==>   closedir($od)
결과 값 return ==>  

[readdir]
함수명 ==>   readdir()
설 명 ==>   디렉토리에 있는 모든 디렉토리 및 파일들의 이름을 읽어 배열의 형태로 반환
사용 형식 ==>   readdir($od)
결과 값 return ==>  

[rewinddir]
함수명 ==>   rewinddir()
설 명 ==>   디렉토리 핸들의 포인터 위치를 제일 처음으로 되돌린다.
사용 형식 ==>   rewinddir($od)
결과 값 return ==>  

[chdir]
함수명 ==>   chdir()
설 명 ==>   지저한 디렉토리로 바꾼다.
사용 형식 ==>   chdir("경로명/디렉토리명")
결과 값 return ==>  

[dir]
함수명 ==>   dir()
설 명 ==>   디렉토리 관련 함수를 사용할 수 있는 클래스
사용 형식 ==>   dir("경로/디렉토리명")
결과 값 return ==>  

[parse_url]
함수명 ==>   parse_url()
설 명 ==>   url을 입력하면 해당 url에 대한 정보를 연관 배열로 저장하여 반환
사용 형식 ==>   parse_url("URL주소")
결과 값 return ==>  

[urlencode]
함수명 ==>   urlencode()
설 명 ==>   데이터를 url인코딩해준다.
사용 형식 ==>   urlencode("문자열")
결과 값 return ==>  

[urldecode]
함수명 ==>   urldecode()
설 명 ==>   url을 통해 넘어온 값 중 인코딩된 문자열을 디코딩한다.
사용 형식 ==>   urldecode("문자열")
결과 값 return ==>  

[gettype]
함수명 ==>   gettype()
설 명 ==>   변수형을 반환한다.
사용 형식 ==>   gettype("변수명")
결과 값 return ==>  

[settype]
함수명 ==>   settype()
설 명 ==>   변수형을 변환한다.
사용 형식 ==>   settype("변수명", "변수타입")
결과 값 return ==>  

[intval]
함수명 ==>   intval()
설 명 ==>   변수값을 정수형 값으로 변환
사용 형식 ==>   intval("변수값")
결과 값 return ==>  

[doubleval]
함수명 ==>   doubleval()
설 명 ==>   변수값을 실수형 값으로 변환한다.
사용 형식 ==>   doubleval("변수값")
결과 값 return ==>  

[strval]
함수명 ==>   strval()
설 명 ==>   변수를 문자형 값으로 변환한다.
사용 형식 ==>   strval("변수값")
결과 값 return ==>  

[isset]
함수명 ==>   isset()
설 명 ==>   변수가 존재하는지 확인한다.
사용 형식 ==>   isset("변수명")
결과 값 return ==>  

[unset]
함수명 ==>   unset()
설 명 ==>   변수를 삭제한다.
사용 형식 ==>   unset("변수명")
결과 값 return ==>  

[empty]
함수명 ==>   empty()
설 명 ==>   변수에 값이 존재하는지 확인하여 없으면 true를 있으면 false를 반환한다.
사용 형식 ==>   empty("변수명")
결과 값 return ==>  

[is_array]
함수명 ==>   is_array()
설 명 ==>   변수의 형이 배열인지 확인한다.
사용 형식 ==>   is_array("변수명")
결과 값 return ==>  

[is_double]
함수명 ==>   is_double
설 명 ==>   변수의 형이 더블형인지 확인한다.
사용 형식 ==>   is_double("변수명")
결과 값 return ==>  

[abs]
함수명 ==>   abs()
설 명 ==>   변수의 절대값을 반환
사용 형식 ==>   abs("변수명")
결과 값 return ==>  

[round]
함수명 ==>   round()
설 명 ==>   변수의 반올림한 값을 구한다.
사용 형식 ==>   round("변수명")
결과 값 return ==>  

[crypt]
함수명 ==>   crypt();
사용 형식 ==>   crypt("문자열","암호키");
설 명 ==>   특정문자열을 암호키를 이용하여 암호화 한다.
결과 값 return ==>  

[ceil]
함수명 ==>   ceil()
설 명 ==>   변수 값의 무조건 올림 값을 구한다.
사용 형식 ==>   ceil("변수명")
결과 값 return ==>  

[floor]
함수명 ==>   floor()
설 명 ==>   변수값의 무조건 내림 값을 구한다.
사용 형식 ==>   floor("변수명")
결과 값 return ==>  

[pow]
함수명 ==>   pow()
설 명 ==>   인자 값만큼 제곱승 한 값을 구한다.
사용 형식 ==>   pow("변수명", "제곱할 횟수")
결과 값 return ==>  

[min]
함수명 ==>   min()
설 명 ==>   최소값을 구한다.
사용 형식 ==>   min("숫자값", "숫자값",...)
결과 값 return ==>  

[max]
함수명 ==>   max()
설 명 ==>   최대값을 구한다.
사용 형식 ==>   max("숫자값", "숫자값",...)
결과 값 return ==>  

[count]
함수명 ==>   count()
설 명 ==>   배열의 크기를 구한다.
사용 형식 ==>   count("변수명")
결과 값 return ==>  

[sizeof]
함수명 ==>   sizeof()
설 명 ==>   배열의 크기를 구한다.
사용 형식 ==>   sizeof("변수명")
결과 값 return ==>  

[each]
함수명 ==>   each()
설 명 ==>   배열의 내용을 출력할때 사용한다.
사용 형식 ==>   each("배열변수명")
결과 값 return ==>  

[list]
함수명 ==>   list()
설 명 ==>   배열의 내용을 출력할때 사용한다.
사용 형식 ==>   list("배열의 인자를 받을 변수명", "배열의 인자를 받을 변수명"...)
결과 값 return ==>  

[end]
함수명 ==>   end()
설 명 ==>   현재 배열의 포인터를 끝으로 이동시킨다.
사용 형식 ==>   end("배열변수명")
결과 값 return ==>  

[next]
함수명 ==>   next()
설 명 ==>   현재 배열의 포인터를 다음으로 이동시킨다.
사용 형식 ==>   next("배열변수명")
결과 값 return ==>  

[reset]
함수명 ==>   reset()
설 명 ==>   reset은 배열포인터를 다시 처음으로 되돌린다.
사용 형식 ==>   reset("배열변수명")
결과 값 return ==>  

[exec]
함수명 ==>   exec()
설 명 ==>   리눅스 서버의 내부 명령어를 사용하게 한다.
사용 형식 ==>   exec("리눅스명령어", "결과를 저장할 변수명" ,"에러발생시 저장할 변수명")
결과 값 return ==>  

[number_format]
함수명 ==>   number_format()
설 명 ==>   천단위마다 ","를 붙여준다.
사용 형식 ==>   number_format("변수명", "소수점자리수", "소수점 표시마크변경", "천단위 표시 마크변경")
결과 값 return ==>  

[show_source]
함수명 ==>   show_source()
설 명 ==>   php파일의 소스를 보여준다.
사용 형식 ==>   show_source("경로명/파일명")
결과 값 return ==>  

[highlight_string]
함수명 ==>   highlight_string()
설 명 ==>   php파일의 소스를 보여준다.
사용 형식 ==>   show_source("경로명/파일명")
결과 값 return ==>  

[uniqid]
함수명 ==>   uniqid()
설 명 ==>   유일한 아이디 값을 만들어준다
사용 형식 ==>   uniqid()
결과 값 return ==>  

[PHP_SELF]
함수명 ==>   $PHP_SELF
사용 형식 ==>   $PHP_SELF
결과 값 return ==>   문자열
설 명 ==>   document root를 기준으로 한 현재 실행중인 스크립트의 파일 이름. PHP를 커맨드라인으로 샐행한 경우 이 변수는 사용할 수 없다.

[HTTP_COOKIE_VARS]
함수명 ==>   $HTTP_COOKIE_VARS
사용 형식 ==>   $HTTP_COOKIE_VARS
결과 값 return ==>   문자열
설 명 ==>   현재 스크립트에 HTTP 쿠키를 사용해 전달된 변수의 associative 배열

[HTTP_GET_VARS]
함수명 ==>   $HTTP_GET_VARS
사용 형식 ==>   $HTTP_GET_VARS
결과 값 return ==>   문자열
설 명 ==>   현재 스크립트에 HTTP GET 메소드를 사용해 전달된 변수의 associative 배열

[HTTP_POST_VARS]
함수명 ==>   $HTTP_POST_VARS
사용 형식 ==>   $HTTP_POST_VARS
결과 값 return ==>   문자열
설 명 ==>   현재 스크립트에 HTTP POST 메소드를 사용해 전달된 변수의 associative 배열

[HTTP_POST_FILES]
함수명 ==>   $HTTP_POST_FILES
사용 형식 ==>   $HTTP_POST_FILES
결과 값 return ==>  
설 명 ==>   현재 스크립트에 HTTP POST 메소드를 사용해 업로드된 파일에 대한 정보를 가진 associative 배열

[HTTP_ENV_VARS]
함수명 ==>   $HTTP_ENV_VARS
사용 형식 ==>   $HTTP_ENV_VARS
결과 값 return ==>   문자열
설 명 ==>   현재 스크립트에 현재 환경 변수에서 전달된 변수의 associative 배열

[HTTP_SERVER_VARS]
함수명 ==>   $HTTP_SERVER_VARS
사용 형식 ==>   $HTTP_SERVER_VARS
결과 값 return ==>   문자열
설 명 ==>   현재 스크립트에 HTTP 서버에서 전달된 변수의 associative 배열 이 변수들은 위에서 언급한 Apache 변수들과 유사한 내용으로 되어있다.

[GATEWAY_INTERFACE]
함수명 ==>   $GATEWAY_INTERFACE
사용 형식 ==>   $GATEWAY_INTERFACE
결과 값 return ==>   문자열
설 명 ==>   서버가 사용하고 있는 CGI specification의 revision. 예: 'CGI/1.1'.

[SERVER_NAME]
함수명 ==>   $SERVER_NAME
사용 형식 ==>   $SERVER_NAME
결과 값 return ==>   문자열
설 명 ==>   현재 스크립트가 실행되고 있는 호스트의 이름. 만약 스크립트가 가상 호스트에서 실행되고 있다면, 이 값은 가상 호스트의 값이 될 것이다.

[SERVER_SOFTWARE]
함수명 ==>   $SERVER_SOFTWARE
사용 형식 ==>   $SERVER_SOFTWARE
결과 값 return ==>   문자열
설 명 ==>   요구에 대한 대답의 헤더에 사용할 서버 identification 문자열

[SERVER_PROTOCOL]
함수명 ==>   $SERVER_PROTOCOL
사용 형식 ==>   $SERVER_PROTOCOL
결과 값 return ==>   문자열
설 명 ==>   페이지가 요구되어질 때 사용한 프로토콜의 이름과 리비젼. 예: 'HTTP/1.0';

[REQUEST_METHOD]
함수명 ==>   $REQUEST_METHOD
사용 형식 ==>   $REQUEST_METHOD
결과 값 return ==>   문자열
설 명 ==>   페이지가 요구될 때 사용된 method: 예: 'GET', 'HEAD', 'POST', 'PUT'.

[QUERY_STRING]
함수명 ==>   $QUERY_STRING
사용 형식 ==>   $QUERY_STRING
결과 값 return ==>   문자열
설 명 ==>   해당 페이지를 접근할 때 사용된 query string.

[DOCUMENT_ROOT]
함수명 ==>   $DOCUMENT_ROOT
사용 형식 ==>   $DOCUMENT_ROOT
결과 값 return ==>   문자열
설 명 ==>   현재 스크립트가 샐행중인 document root 디렉토리. 서버의 설정 파일에 정의되어 있다.

[HTTP_ACCEPT]
함수명 ==>   $HTTP_ACCEPT
사용 형식 ==>   $HTTP_ACCEPT
결과 값 return ==>   문자열
설 명 ==>   현재의 요구(request)에 포함된 Accept: 헤더의 내용 (존재하는 경우만)

[HTTP_ACCEPT_CHARSET]
함수명 ==>   $HTTP_ACCEPT_CHARSET
사용 형식 ==>   $HTTP_ACCEPT_CHARSET
결과 값 return ==>   문자열
설 명 ==>   현재의 요구(request)에 포함된 Accept-Charset: 헤더의 내용 (존재하는 경우만). 예: 'iso-8859-1,*,utf-8'.

[HTTP_ACCEPT_ENCODING]
함수명 ==>   $HTTP_ACCEPT_ENCODING
사용 형식 ==>   $HTTP_ACCEPT_ENCODING
결과 값 return ==>   문자열
설 명 ==>   현재의 요구(request)에 포함된 Accept-Encoding: 헤더의 내용 (존재하는 경우만). 예: 'gzip'.

[HTTP_ACCEPT_LANGUAGE]
함수명 ==>   $HTTP_ACCEPT_LANGUAGE
사용 형식 ==>   $HTTP_ACCEPT_LANGUAGE
결과 값 return ==>   문자열
설 명 ==>   현재의 요구(request)에 포함된 Accept-Language: 헤더의 내용 (존재하는 경우만). 예: 'en'.

[HTTP_CONNECTION]
함수명 ==>   $HTTP_CONNECTION
사용 형식 ==>   $HTTP_CONNECTION
결과 값 return ==>   문자열
설 명 ==>   현재의 요구(request)에 포함된 Connection: 헤더의 내용 (존재하는 경우만). 예: 'Keep-Alive'.

[HTTP_HOST]
함수명 ==>   $HTTP_HOST
사용 형식 ==>   $HTTP_HOST
결과 값 return ==>   문자열
설 명 ==>   현재의 요구(request)에 포함된 Host: 헤더의 내용 (존재하는 경우만).

[HTTP_REFERER]
함수명 ==>   $HTTP_REFERER
사용 형식 ==>   $HTTP_REFERER
결과 값 return ==>   문자열
설 명 ==>   현재 페이지를 찾아온 페이지.

[HTTP_USER_AGENT]
함수명 ==>   $HTTP_USER_AGENT
사용 형식 ==>   $HTTP_USER_AGENT
결과 값 return ==>   문자열
설 명 ==>   현재의 요구에 포함된 User_Agent: 헤더의 내용 (존재하는 경우만).

[REMOTE_ADDR]
함수명 ==>   $REMOTE_ADDR
사용 형식 ==>   $REMOTE_ADDR
결과 값 return ==>   문자열
설 명 ==>   사용자가 현재 페이지를 보고 있는 시스템의 IP 주소

[REMOTE_PORT]
함수명 ==>   $REMOTE_PORT
사용 형식 ==>   $REMOTE_PORT
결과 값 return ==>   문자열
설 명 ==>   사용자의 시스템이 웹서버와 통신하고 있는 port 번호

[SCRIPT_FILENAME]
함수명 ==>   $SCRIPT_FILENAME
사용 형식 ==>   $SCRIPT_FILENAME
결과 값 return ==>   문자열
설 명 ==>   현재 실행되고 있는 스크립트의 절대 경로명

[SERVER_ADMIN]
함수명 ==>   $SERVER_ADMIN
사용 형식 ==>   $SERVER_ADMIN
결과 값 return ==>   문자열
설 명 ==>   웹서버 설정 파일에서 SERVER_ADMIN (Apache의 예) 지시자에 설정되어 있는 값.

[SERVER_PORT]
함수명 ==>   $SERVER_PORT
사용 형식 ==>   $SERVER_PORT
결과 값 return ==>   문자열
설 명 ==>   웹서버가 사용하는 port 번호. 기본값으로 보통 '80'이 사용.

[SERVER_SIGNATURE]
함수명 ==>   $SERVER_SIGNATURE
사용 형식 ==>   $SERVER_SIGNATURE
결과 값 return ==>   문자열
설 명 ==>   server-generated 페이지에 추가되는 서버 버전과 가상 호스트 명. (enabled된 경우만)

[PATH_TRANSLATED]
함수명 ==>   $PATH_TRANSLATED
사용 형식 ==>   $PATH_TRANSLATED
결과 값 return ==>   문자열
설 명 ==>   모든 virtual을 real로의 전환을 마친 후, 현재 페이지의 파일시스템 기준의 경로. (document root 기준이 아니다.)

[SCRIPT_NAME]
함수명 ==>   $SCRIPT_NAME
사용 형식 ==>   $SCRIPT_NAME
결과 값 return ==>   문자열
설 명 ==>   현재 스크립트의 경로. 이것은 해당 페이지가 자기 자신을 가리킬 때 사용하면 유용하다.

[REQUEST_URI]
함수명 ==>   $REQUEST_URI
사용 형식 ==>   $REQUEST_URI
결과 값 return ==>   문자열
설 명 ==>   이 페이지를 접근하기 위해 사용한 URI. 예: '/index.html'.

[mysql_connect]
함수명 ==>   mysql_connect();
사용 형식 ==>   mysql_connect(MYSQL *mysql, const char *host, const char *user, const char *passwd)
결과 값 return ==>   mysql/NULL
설 명 ==>   데이터베이스 엔진과 연결을 설정하는 함수

[mysql_select_db]
함수명 ==>   mysql_select_db();
사용 형식 ==>   mysql_select_db(MYSQL *mysql, const char *db)
결과 값 return ==>   int
설 명 ==>   mysql_connect() 함수가 성공적으로 수행된 후에 호출하는 함수 서버에서 관리하고 있는 데이터베이스 중 접근하려는 데이터베이스를 선택하는 함수

[mysql_query]
함수명 ==>   mysql_query();
사용 형식 ==>   mysql_query(MYSQL *mysql, const char *query);
결과 값 return ==>   int
설 명 ==>   mysql에 의해서 지정된 데이터베이스에 query에 의해서 지정된 SQL 쿼리를 실행한다.

[mysql_store_result]
함수명 ==>   mysql_store_result();
사용 형식 ==>   mysql_store_result(MYSQL *mysql);
결과 값 return ==>   MYSQL_RES
설 명 ==>   mysql_query가 성공적으로 실행된 후 그 결과를 읽는다.

[mysql_fetch_row]
함수명 ==>   mysql_fetch_row();
사용 형식 ==>   mysql_fetch_row(MYSQL_RES *res);
결과 값 return ==>   MYSQL_ROW
설 명 ==>   쿼리 결과로부터 다음 줄(row)을 불러온다. 더 이상 불러올 데이터가 없으면, NULL을 리턴한다.

[mysql_num_fields]
함수명 ==>   mysql_num_fields();
사용 형식 ==>   mysql_num_fields(MYSQL_RES *result);
결과 값 return ==>   int
설 명 ==>   쿼리 결과에 있는 컬럼(fields)의 숫자를 리턴하는 매크로 함수

[mysql_num_rows]
함수명 ==>   mysql_num_rows();
사용 형식 ==>   mysql_num_rows(MYSQL_RES *result);
결과 값 return ==>   int
설 명 ==>   가장 최근에 타 함수에 의해서 리턴된 행수(ROW)를 리턴하는 매크로 함수(검색결과 갯수 리턴)

[mysql_close]
함수명 ==>   mysql_close();
사용 형식 ==>   mysql_close(MYSQL *mysql);
결과 값 return ==>   void
설 명 ==>   데이터 베이스 엔진과의 연결을 닫는다. 모든 작업이 완료된 후에는 mysql_close으로 connection을 닫아야함.  복귀 값 : 없음

[mysql_eof]
함수명 ==>   mysql_eof();
사용 형식 ==>   mysql_eof(MYSQL_RES *);
결과 값 return ==>   int
설 명 ==>   fetch할 자료가 더 있는지를 검사한다.

[mysql_error]
함수명 ==>   mysql_error();
사용 형식 ==>   mysql_error(MYSQL *mysql);
결과 값 return ==>   char
설 명 ==>   mysql 연결에서 가장 최근에 호출된 MySQL 함수의 오류 메시지 문자열을 리턴하는 함수. 오류가 발생하지 않았다면, empty string을 리턴

[mysql_affected_rows]
함수명 ==>   mysql_affected_rows();
사용 형식 ==>   mysql_affected_rows(MYSQL *mysql);
결과 값 return ==>   int
설 명 ==>   가장 최근의 UPDATE, DELETE 또는 INSERT에 영향을 받은(affected) row의 수를 반환한다.

[mysql_create_db]
함수명 ==>   mysql_create_db();
사용 형식 ==>   mysql_create_db(MYSQL *mysql, const char *db);
결과 값 return ==>   int
설 명 ==>   mysql에 의해서 지정된 기계에 db라는 이름의 데이터베이스를 생성한다.

[mysql_data_seek]
함수명 ==>   mysql_data_seek();
사용 형식 ==>   mysql_data_seek(MYSQL_RES *res, uint offset);
결과 값 return ==>   void
설 명 ==>   쿼리 결과값에서 지정된 행(row)을 찾는다. mysql_use_result()에 의해서 생성된 연결에서는 쓸 수 없다.

[mysql_drop_db]
함수명 ==>   mysql_fetch_field();
사용 형식 ==>   mysql_drop_db(MYSQL *mysql, const char *db);
결과 값 return ==>   int
설 명 ==>   mysql에 의해서 지정된 machine으로부터 db라는 이름을 데이터베이스를 drop한다.

[mysql_fetch_field]
함수명 ==>   mysql_fetch_field();
사용 형식 ==>   mysql_fetch_field(MYSQL_RES *handle);
결과 값 return ==>   MYSQL_FIELD
설 명 ==>   테이블 필드의 타입이 무엇인지 알아낸다.

[mysql_fetch_lengths]
함수명 ==>   mysql_fetch_lengths();
사용 형식 ==>   mysql_fetch_lengths(MYSQL_RES *mysql);
결과 값 return ==>   unsigned int
설 명 ==>   쿼리 결과값에 있는 모든 컬럼의 길이를 리턴한다.

[mysql_field_seek]
함수명 ==>   mysql_field_seek();
사용 형식 ==>   mysql_field_seek(MYSQL_RES *result, int field);
결과 값 return ==>   void
설 명 ==>   컬럼 커서를 컬럼 번호 field로 옮긴다. 이때, field 값 x는 0 <= x <= mysql_num_fields(MYSQL_RES*)-1 이어야한다.

[mysql_free_result]
함수명 ==>   mysql_free_result();
사용 형식 ==>   mysql_free_result(MYSQL_RES *result);
결과 값 return ==>   void
설 명 ==>   쿼리 결과를 저장하고있는 메모리를 free시킨다. mysql_store_result()에 대한 결과값 사용을 마치고 호출해야한다.

[mysql_get_client_info]
함수명 ==>   mysql_get_client_info();
사용 형식 ==>   mysql_get_client_info(void);
결과 값 return ==>   char
설 명 ==>   현재 쓰이고 있는 client 라이브러리의 버전 정보를 포함하고 있는 스트링을 리턴한다.

[mysql_get_host_info]
함수명 ==>   mysql_get_host_info();
사용 형식 ==>   mysql_get_host_info(MYSQL *mysql);
결과 값 return ==>   char
설 명 ==>   host의 이름을 리턴한다 (mysql_connect와 host 인자(argument)는 같다).

[mysql_get_proto_info]
함수명 ==>   mysql_get_proto_info();
사용 형식 ==>   mysql_get_proto_info(MYSQL *mysql);
결과 값 return ==>   int
설 명 ==>   연결에 쓰이고 있는 프로토콜의 버전을 얻는다.

[mysql_get_server_info]
함수명 ==>   mysql_get_server_info();
사용 형식 ==>   mysql_get_server_info(MYSQL *mysql);
결과 값 return ==>   char
설 명 ==>   써버의 버전 번호를 리턴한다.

[mysql_insert_id]
함수명 ==>   mysql_insert_id();
사용 형식 ==>   mysql_insert_id(MYSQL *mysql);
결과 값 return ==>   int
설 명 ==>   결과 변수인 'res'에서 AUTO_INCREMENT 필드를 위해서 생성된 ID를 리턴한다.

[mysql_list_dbs]
함수명 ==>   mysql_list_dbs();
사용 형식 ==>   mysql_list_dbs(MYSQL *mysql, const char *wild);
결과 값 return ==>   MYSQL_RES
설 명 ==>   mSQL 어플리케이션을 쉽게 포팅하기 위해서 제공되었다. 쿼리처럼 'SHOW databases LIKE wild-card '를 실행하는 것과 유사하다.

[mysql_list_fields]
함수명 ==>   mysql_list_fields();
사용 형식 ==>   mysql_list_fields(MYSQL *mysql, const char *table, const char *wild);
결과 값 return ==>   MYSQL_RES
설 명 ==>   mSQL 어플리케이션을 쉽게 포팅하기 위해서 제공되었다.

[mysql_list_processes]
함수명 ==>   mysql_list_processes();
사용 형식 ==>   mysql_list_processes(MYSQL *mysql);
결과 값 return ==>   MYSQL_RES
설 명 ==>   MySQL 데이터베이스 엔진에서 현재 실행 중인 thread의 리스트를 얻는다. 단, process 권한을 가지고 있어야한다.

[mysql_list_tables]
함수명 ==>   mysql_list_tables();
사용 형식 ==>   mysql_list_tables(MYSQL *mysql, const char *wild);
결과 값 return ==>   MYSQL_RES
설 명 ==>   mSQL 응용 프로그램을 쉽게 포팅하기 위한 함수. 쿼리처럼 'SHOW tables FROM database'를 하는 것과 유사하다.

[mysql_real_query]
함수명 ==>   mysql_real_query();
사용 형식 ==>   mysql_real_query(MYSQL *mysql, const char *query, uint length);
결과 값 return ==>   int
설 명 ==>   쿼리 스트링을 위해서 크기가 고정된 버퍼를 할당했다면, 이것을 쓸 수 있다.

[mysql_reload]
함수명 ==>   mysql_reload();
사용 형식 ==>   mysql_reload(MYSQL *mysql);
결과 값 return ==>   int
설 명 ==>   MySQL 데이터베이스 엔진이 사용자 권한 테이블을 다시 읽어들이고, 모든 캐쉬를 정리하고, 쓰이지 않는 모든 테이블을 close한다.

[mysql_shutdown]
함수명 ==>   mysql_shutdown();
사용 형식 ==>   mysql_shutdown(MYSQL *mysql);
결과 값 return ==>   int
설 명 ==>   MySQL 데이터베이스 엔진을 shutdown한다. 단, 사용자가 shutdown 권한을 가지고 있어야한다.

[mysql_stat]
함수명 ==>   mysql_stat();
사용 형식 ==>   mysql_stat(MYSQL *mysql);
결과 값 return ==>   char
설 명 ==>   커맨드 'mysqladmin version'과 유사한 정보를 문자 배열로 리턴한다.

[mysql_use_result]
함수명 ==>   mysql_use_result();
사용 형식 ==>   mysql_use_result(MYSQL *mysql);
결과 값 return ==>   MYSQL_RES
설 명 ==>   결과를 mysql_fetch_row()에 의해서 써버에서 동적으로 불러오는 것을 제외하면, mysql_store_result()와 같다.










날짜나 시간 함수들은 매우 간단하면서도 꽤나 자주 쓰이죠.

그래서 상당히 중요하지만 쉽게쉽게 넘어가는 경우들이 많죠 :P

그래서 한번 제가 아는 함수들을 가지고 전체적인 정리를 해볼까 합니다.

우선 date()함수부터 시작하죠~

date() 함수는 어떠한 시간(현재시간이나 예전 시간이나)을 사용자가 원하는 거의 모든 형태로 바꿔줄 수 있습니다.

우선 date()함수가 지원하는 모든 형태들을 알아봐야겠네요.

a : am, pm
A : AM,PM
d : 2자리 정수의 날짜 형태
D : 요일의 앞 3글자 (Fri, Thu, Tue ... )
F : 해당 달의 이름 형태 (March, December, ... )
h : 2자리 정수의 시간 (12시간 이내)
H : 2자리 정수의 시간(24시간)
i : 2자리 정수의 분
l : 해당 날의 요일 (Friday, Thursday ... )
m : 해당 달의 2자리 정수 형태
M : 해당하는 달의 이름 앞 3글자 (Jan, Dec, ... )
s : 정수형의 초
T : 해당하는 달에 날이 몇일까지 있는지 (28,29,30,31)
Y : 해당 년의 4자리 정수 형태 (2001)
y : 해당 년의 2자리 정수 형태 (01)
z : 해당 년 1월 1일부터 몇일째 날인지

위에 것들을 굳이 외울 필요는 없구요. 찾아서 쓰면 되죠 :). 저는 자주 쓰는 몇개만 알구 있어요.

쓸때는요

echo date("Y/m/d H:i:s");

요렇게만 하면 현재 시간이 2002/10/4 13:56:12 이런식으로 나오게 된딥나다~

쓰는 법은 정말 쉽죠 :)

그럼 예전 날짜나 미래 날짜를 지정해서 쓰는 법을 알아봅시다.

mktime() 함수를 이용하면 간단하답니다.

$str = mktime(시간, 분 , 초 , 달 , 날 ,연도);

이렇게 하시면 $str에 지정하신 시간의 자료가 저장됩니다.

그 자료를 date()함수로 자기가 원하는 형태로 나타낼 수 있답니다. :)

이런 식으로 시간 함수를 사용하면 정말 많은 것들을 할 수 있씁니다.

어떤 예전 날짜나 미래의 날짜가 무슨 요일인지도 쉽게 알아볼 수 있죠.

그럼 예제로 한번 밀레니엄 버그가 생긴다는 2000년 1월 1일이 무슨 요일이었는지 한번 알아보죠~

echo date("l", mktime(0,0,0,1,1,200));

해주면 200년 1월 1일이 무슨 요일인지 출력합니다.

참고로 방금 해본 결과 토요일이엇네요 :)

제 게시판에 보이는 날짜는 mysql에서 now()로 지정한 날짜를 받아와서 Oct 04, 2002 (Fri) 이런 형태로 만듭니다.

그걸 어떻게 하나 알아봅시다.

now()로 시간을 mysql상에서 저장하게 되면 2002-10-4 19:23:40

이런식으로 저장이 됩니다.

그러면 이렇게

$date = substr($data, 0, 10);
$str = explode("-", $date);
$date = date("M d, Y (D)", mktime(0, 0, 0, $str[1], $str[2], $str[0]));

이런식으로 앞의 10글자만 따오고 ( 2002-10-04 <- 10글자 맞죠? )

"-" 이 다시 기호로 분리시켜서 :)

date()함수와 mktime()함수를 이용해서 날짜를 원하는 형태로 만들어주게 됩니다.



PHP 배열 관련 함수들  

array_change_key_case -- 모두 대문자나 소문자화된 문자열 키를 갖는 배열로 반환한다
array_chunk -- 배열을 여러 덩어리로 분산시킨다
array_combine -- 키를 위한 배열과 값을 위한 배열을 각각 사용하여 배열을 생성한다
array_count_values -- 배열 값의 수를 센다
array_diff_assoc -- 인덱스 검사와 함께 배열간의 차이를 계산한다
array_diff_uassoc -- Computes the difference of arrays with additional index check which is performed by a user supplied callback function.
array_diff -- 배열간의 차이를 계산한다
array_fill -- 배열을 특정값으로 채운다
array_filter -- 콜백함수를 사용하여 배열의 원소를 필터한다
array_flip -- 배열안의 모든 키를 각 키의 연관값으로 바꾼다.
array_intersect_assoc -- 인덱스 검사과 함께 배열의 중복을 계산한다
array_intersect -- 배열의 중복을 계산한다
array_key_exists -- 주어진 키와 인덱스가 배열에 존재하는지 확인한다
array_keys -- 배열의 모든 키를 반환한다
array_map -- Applies the callback to the elements of the given arrays
array_merge_recursive -- 두개 이상의 배열을 재귀적으로 병합한다
array_merge -- 두개 이상의 배열을 병합한다
array_multisort -- 여러개의 배열 또는 다차원 배열을 정렬한다
array_pad -- 설정된 길이만큼 특정 값으로 배열을 채운다
array_pop -- 배열 끝의 요소를 뽑아낸다
array_push -- 배열의 끝에 하나 이상의 원소를 넣는다.
array_rand -- 배열안에서 하나 이상의 임의 원소를 뽑아낸다
array_reduce -- 콜백 함수를 사용하여 배열을 반복적으로 단일 값으로 축소시킨다
array_reverse -- 배열 원소를 역순으로 반환한다
array_search -- 배열에서 주어진 값을 검색하고 성공하면 해당 키를 반환한다
array_shift -- 배열의 맨 앞에 있는 원소를 옆으로 이동시킨다
array_slice -- 배열의 일부를 추출한다
array_splice (배열명, 제거할배열시작번호번호,제거할배열갯수); 시작번호는0번부터시작. //배열의 일부를 삭제하고, 그 위치에 다른 내용을 대체한다
array_sum -- 배열내의 값들의 합을 계산한다
array_udiff_assoc -- Computes the difference of arrays with additional index check. The data is compared by using a callback function.
array_udiff_uassoc -- Computes the difference of arrays with additional index check. The data is compared by using a callback function. The index check is done by a callback function also
array_udiff -- Computes the difference of arrays by using a callback function for data comparison.
array_unique -- 배열에서 중복된 값을 제거한다
array_unshift -- 배열의 맨 앞에 하나 이상의 원소를 첨가한다
array_values -- 배열의 모든 값들을 반환한다
array_walk -- 배열의 개개의 원소에 대해서 특정 함수를 적용하여 수행한다
array -- 배열을 생성한다
arsort -- 배열을 내림차순 정렬하고 인덱스의 상관관계를 유지한다.
asort -- 배열을 정렬하고 인덱스 상관 관계를 유지한다
compact -- 여러 변수들과 값을 갖는 배열을 생성한다
count -- 변수의 원소 갯수를 구한다
current -- 배열의 현재 원소를 반환한다
each -- 배열에서 현재의 키와 값 쌍을 반환하고 배열 커서를 전진시킨다
end -- 내부 배열 포인터를 마지막 원소를 가리키게 한다
extract -- 배열의 현재 심볼 테이블로 변수들을 입력한다
in_array -- 배열에서 값이 존재하는지 점검한다
key -- 연관배열에서 키를 꺼낸다
krsort -- 역순으로 키에 의해 배열을 정렬한다
ksort -- 키에 의해 배열을 정렬한다
list -- 배열처럼 변수들을 지정한다
natcasesort -- 대소문자를 구별하지 않고 'natural order' 알고리즘을 사용하여 배열을 정렬한다
natsort -- 'natural order' 알고리즘을 사용하여 배열을 정렬한다
next -- 배열의 내부 배열 포인터를 전진시킨다
pos -- 배열에서 현재 원소를 꺼내온다
prev -- 내부 배열 포인터를 앞으로 돌린다
range -- 특정 범위의 원소를 갖는 배열을 생성한다
reset -- 배열의 내부 포인터가 배열의 첫번째 원소를 가리키게 한다
rsort -- 역순으로 배열을 정렬한다
shuffle -- 배열을 뒤섞는다
sizeof -- count()의 별칭
sort -- 배열을 정렬한다
uasort -- 사용자-정의 비교함수로 배열을 정렬하고 인덱스 연관성을 유지한다
uksort -- 사용자-정의된 비교함수를 사용하여 키에 의해 배열을 정렬한다
usort -- 사용자-정의된 비교함수를 사용하여 값들에 의해 배열을 정렬한다


----------------------------------------------------------------------------------------------
global_register 의 설정이 off 로 되어 있는것은 맞습니다.

form 값은 주로 post 와 get 등 두가지 방법으로 넘어 옵니다..

추가로 설명을 드리자면..






예를 들어 다음과 같은 html 페이지가 있을 경우



<form name='test'  method='post' action='test015.php?id1=3' >

더하기
<input type='text' name='id3' value='6'>
<input type='submit' value='값전송'>

</form>



global_register =on 일경우

get 방식으로 넘어오든 post 방식으로 넘어오든 상관없이  값을

$t_id1 = $id1;

$t_id2 = $id2;

$t_id3 = $id3;

이런 방식으로 값을 받아 올수 있지만.

global_register =off 일경우

$t_id1 = $id1;

$t_id2 = $id2;

$t_id3 = $id3;

로 할경우  get 방식으로 넘어 왔는지 post 방식으로 값이 넘어 왔는지 알수가 없어 값이

"" 또는 null 값이 저장이 됩니다.

따라서.. 값을 제대로 받기 위해서는 $_GET($HTTP_GET_VARS), $_POST(HTTP_POST_VARS)를 이용해서 값을 받아 와야만 합니다.

$_GET 은  4.1.0부터 지원되는 환경변수로 이전 버전에서는 $HTTP_GET_VARS를 사용되었습니다
GET 메소드를 통해 현재 스크립트에 전달되는 변수의 연관 배열로 어떤 영역에서는 자동으로 전역화됩니다.
이변수는 '슈퍼전역'자동 전역, 변수로 스크립트 내의 모든 영역에서 사용가능합니다
$HTTP_GET_VARS를 사용할때와 마찬가지로 함수나 메소드에서 이 변수에 접근하기 위해 global $_GET;를 사용할 필요는 없습니다..
$HTTP_GET_VARS는 동일한 초기치 정보를 갖지만 자동전역이 아닙니다.(HTTP_GET_VARS 와 $_GET는 다른 변수이며 PHP가 따로 다루게 된다는 것에 주의)

$_POST 또한 : 4.1.0부터 지원되며 이전 버전에서는 $HTTP_POST_VARS를 사용되었습니다.
POST 메소드를 통해 현재 스크립트에 전달되는 변수의 연관 배열로 어떤 영역에서는 자동으로 전역화됩니다.
이변수는 '슈퍼전역', 도는 자동 전역, 변수로 스크립트 내의 모든 영역에서 사용가능하다는 것이다.
$HTTP_POST_VARS를 사용할때와 마찬가지로, 함수나 메소드에서 이 변수에 접근하기 위해 global $_POST;를 사용할 필요는 없습니다..
$HTTP_POST_VARS는 동일한 초기치 정보를 갖지만 자동전역이 아닙니다. (HTTP_POST_VARS 와 $_POST는 다른 변수이며 PHP가 따로 다루게 된다는 것에 주의한다)




따라서 위 예제의 값을 제대로 받아서 처리 하기 위해서는

test015.php에서 값을 받을 때에는 id1과 id2는 get 방식으로 값이 넘어 오게 되며

id3은 post 방식으로 값이 전송하게 되므로



$t_id1 = $_GET[id1];

$t_id2 = $_GET[id2];

$t_id3 = $_POST[id3];



이런식으로 값을 받아 처리 해야 됩니다



global_register 의 설정을on으로 변경을 해도 무방하지만 보안상 많은 취약점이 드러 나므로 global_register 의 설정을 off 상태로 두시고 프로그램 작업을 하시면됩니다.


---------------------------------------------------------------------------------------------

<FORM ENCTYPE="multipart/form-data" action="form_action.php" method=POST>

<input type="hidden" name="MAX_FILE_SIZE" value="1000">

<Input name="userfile" type=file>

<input type="submit" value="확인">

</FORM>



이것이 가장 기초형식이라 하겠다.



그러면 form_action.php 에서는 다음과같은 변수가 생성 된다.

$userfile  :: 서버에 업로드된 임시파일명 및 경로.

$userfile_name  :: 클라이언트에서 보낸 파일명.

$userfile_size  :: 업로드 된 파일 크기.

$userfile_type  :: 브라우저에서 제공하는 mime 형식... (이는 브라우저에 따라 지 멋데로 달라서 사용 하지 않는다.)



위 변수와 함께 다음과같이 정의 된다.

$HTTP_POST_FILES['userfile']['tmp_name']

$HTTP_POST_FILES['userfile']['name']

$HTTP_POST_FILES['userfile']['size']

$HTTP_POST_FILES['userfile']['type']



그러면 이를 퍼담는 방식은



if(is_upload_file($userfile)) {

    move_uploaded_file(userfile,"/serverDir/uploadDir/".$userfile_name);

}

else

    print "Upload Error";



라고 한다.

is_uploaded_file 과 move_uploaded_file 함수만 알면 된다.

----------------------------------------------------------------
여러개 파일을 동시에 업로드 할 경우의 예제.



<form ENCTYPE="multipart/form-data" methode=post action="upload_action.php">

<input type=file name="userfile[]"><br>

<input type=file name="userfile[]">

<input type=submit value="확인">

</form>



위와같이 쓰면 배열로 읽어들인다.



$userfile[0], $userfile[1], ... 이런식으로 읽는다.





//배열이 아닐때
클라이언트에서의 원래 파일명

$HTTP_POST_FILES[][name]          

해당 파일의 mime 타입. 브라우저가 이 타입 대한 정보를 가지고 있는 경우에만 설정
$HTTP_POST_FILES[][type]

업로드가 완료된후 서버에 저장된 파일의 파일명
$HTTP_POST_FILES[][tmp_name]
업로드된 파일의 크기. byte 단위

$HTTP_POST_FILES[][size]

//배열일때
$HTTP_POST_FILES[][name][i]
$HTTP_POST_FILES[][type][i]
$HTTP_POST_FILES[][tmp_name][i]
$HTTP_POST_FILES[][size][i]



--------------------------------------------------------------


GATEWAY_INTERFACE = CGI/1.1
서버가 사용하고 있는 CGI specification의 revision. 예: 'CGI/1.1'.

SERVER_NAME = home1.jbch.org
현재 스크립트가 실행되고 있는 호스트의 이름. 만약 스크립트가 가상 호스트에서 실행되고 있다면, 이 값은 가상 호스트의 값이 될 것이다.

SERVER_SOFTWARE = Apache/1.3.34 (Unix) mod_throttle/3.1.2 PHP/4.3.11
요구에 대한 대답의 헤더에 사용할 서버 identification 문자열

SERVER_PROTOCOL = HTTP/1.1
페이지가 요구되어질 때 사용한 프로토콜의 이름과 리비젼. 예: 'HTTP/1.0';

REQUEST_METHOD = GET
페이지가 요구될 때 사용된 method: 예: 'GET', 'HEAD', 'POST', 'PUT'.

QUERY_STRING = sample=1
해당 페이지를 접근할 때 사용된 query string.

CONTENT_LENGTH =
POST방식을 통해 전달되는 입력정보의 길이 표시.

DOCUMENT_ROOT = /home/httpd/html/church/home1
현재 스크립트가 샐행중인 document root 디렉토리. 서버의 설정 파일에 정의되어 있다.

HTTP_ACCEPT = image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-ms-application, application/vnd.ms-xpsdocument, application/xaml+xml, application/x-ms-xbap, application/vnd.ms-excel, application/msword, application/vnd.ms-powerpoint, application/x-shockwave-flash, */*
현재의 요구(request)에 포함된 Accept: 헤더의 내용 (존재하는 경우만)

HTTP_ACCEPT_CHARSET =
현재의 요구(request)에 포함된 Accept-Charset: 헤더의 내용 (존재하는 경우만). 예: 'iso-8859-1,*,utf-8'.

HTTP_ENCODING =
현재의 요구(request)에 포함된 Accept-Encoding: 헤더의 내용 (존재하는 경우만). 예: 'gzip'.

HTTP_ACCEPT_LANGUAGE = ko
현재의 요구(request)에 포함된 Accept-Language: 헤더의 내용 (존재하는 경우만). 예: 'en'.

HTTP_CONNECTION = Keep-Alive
현재의 요구(request)에 포함된 Connection: 헤더의 내용 (존재하는 경우만). 예: 'Keep-Alive'.

HTTP_HOST = home1.jbch.org
현재의 요구(request)에 포함된 Host: 헤더의 내용 (존재하는 경우만).

HTTP_REFERER =
현재 페이지를 찾아온 페이지. 현재페이지로 넘어오는 링크가 있고, 이 링크를 클릭하여 현재 페이지로 넘어온 경우 이전 페이지의 주소가 설정된다. 이 값은 사용자의 브라우저에 따라 설정될 수도 있고 아닐 수도 있다.

HTTP_USER_AGENT = Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506)
현재의 요구(request)에 포함된 User_Agent: 헤더의 내용 (존재하는 경우만). 현재 페이지를 화면에 표시할 브라우저 소프트웨어의 상징이 되는 문자열이다. 예:Mozilla/4.5 [en] (X11; U; Linux 2.2.9 i586) 특히, 이 값을 get_browser()함수와 함께 사용하면, 해당 페이지를 시용자의 브라우저의 능력에 맞춰서 만들어 낼 수도 있다.

REMOTE_ADDR = 59.14.117.51
사용자가 현재 페이지를 보고 있는 시스템의 IP 주소

REMOTE_HOST =
스크립트를 실행하고 있는 클라이언트 호스트 이름

REMOTE_PORT = 59291
사용자의 시스템이 웹서버와 통신하고 있는 port 번호

SCRIPT_FILENAME = /home/httpd/html/church/home1/basic_tip.php
현재 실행되고 있는 스크립트의 절대 경로명

SERVER_ADMIN = scmaster@jbch.org
웹서버 설정 파일에서 SERVER_ADMIN (Apache의 예) 지시자에 설정되어 있는 값. 만약 스크립트가 가상 호스트 상에서 실행되고 있다면 이 값은 virtual host 설정내에 설정된 값이 된다.

SERVER_PORT = 80
웹서버가 사용하는 port 번호. 기본값으로 보통 '80'이 사용되지만, 예를들어 SSL을 사용하는 경우 여러분이 지정한 secure HTTP 포트의 값이 사용된다.

SERVER_SIGNATURE =
server-generated 페이지에 추가되는 서버 버전과 가상 호스트 명. (enabled된 경우만)

PATH_TRANSLATED = /home/httpd/html/church/home1/basic_tip.php
모든 virtual을 real로의 전환을 마친 후, 현재 페이지의 파일시스템 기준의 경로. (document root 기준이 아니다.)

SCRIPT_NAME = /basic_tip.php
현재 스크립트의 경로. 이것은 해당 페이지가 자기 자신을 가리킬 때 사용하면 유용하다.

REQUEST_URI = /basic_tip.php?sample=1
이 페이지를 접근하기 위해 사용한 URI. 예: '/index.html'.

PHP_SELF = /basic_tip.php
document root를 기준으로 한 현재 실행중인 스크립트의 파일 이름. PHP를 커맨드라인으로 샐행한 경우 이 변수는 사용할 수 없다.

HTTP_COOKIE_VARS = Array
현재 스크립트에 HTTP 쿠키를 사용해 전달된 변수의 associative 배열

HTTP_GET_VARS = Array
현재 스크립트에 HTTP GET 메소드를 사용해 전달된 변수의 associative 배열

HTTP_POST_VARS = Array
현재 스크립트에 HTTP POST 메소드를 사용해 전달된 변수의 associative 배열

HTTP_POST_FILES = Array
현재 스크립트에 HTTP POST 메소드를 사용해 업로드된 파일에 대한 정보를 가진 associative 배열 Array 배열의 내용에 대한 자세한 정보는 POST method uploads 부분을 살펴보자.

HTTP_ENV_VARS = Array
현재 스크립트에 현재 환경 변수에서 전달된 변수의 associative 배열

HTTP_SERVER_VARS = Array
현재 스크립트에 HTTP 서버에서 전달된 변수의 associative 배열 이 변수들은 위에서 언급한 Apache 변수들과 유사한 내용으로 되어있다.


-----------------------------------------------------------------------------------
2. 변수 (추가정보)



변수의 기본 사용방법을 이전 강좌로 충분히 이해 하셨으리라 생각합니다. 그런데 몇가지 기억하시고 유용하게 사용하실 수 있는 부분들이 있습니다. 우선 변수가 사용되는 영역을 알아보겠습니다.





<?
$a = "지용이";



function test() {
   echo $a;
}



test();
?>





위에 예제를 실행시켜 보시면 아무 것도 출력이 되지 않습니다. 이유는 함수 test() 안에서 사용되는 $a 변수와 그 전에 정의된 $a 변수는 서로 다른 변수이기 때문입니다. 함수안에서 사용된 변수를 우리는 지역변수라고 부릅니다. test() 라는 지역안에서 사용되는 변수라는 말이죠. 그럼 test() 함수 밖에 있는 변수를 사용하려면 어떻게 해야하나?



function test() {
   global $a;
   echo $a;
}



위와 같이 global 키워드를 사용하면 전역변수로 지정이 되며 test() 함수에서도 $a 변수를 사용할 수 있게 됩니다. 그런데 $a 변수를 사용할 수 있는 다른 방법이 또 있답니다.



우선 알아야 할 것이 함수 밖에서 선언된 $a 변수는 선언과 동시에 전역변수가 되는 것입니다. 단지 test() 함수에서는 외부에서 선언된 전역변수 $a 를 사용할 것인지 아님 함수 안에 지역변수로서의 $a 를 사용할 것인지를 함수 내에서 결정을 하는 것이지요.


PHP 에서는 위에서 말한 전역변수들을 $GLOBALS 라는 변수를 이용해서 접근할 수 있답니다. $GLOBALS 는 슈퍼전역변수라고 하며 이 변수는 어디서나 자유롭게 사용할 수 있답니다. 그럼 위의 예제를 조금 수정해 보면...



function test() {
   echo $GLOBALS["a"];
}



위와 같이 사용할 수있는 것이죠...^^
음 그럼 슈퍼전역변수라는 것이 $GLOBALS 하나 밖에 없을까요? 아래 슈퍼전역변수들 입니다.
(아래 내용은 PHP 메뉴얼에서 복사해 왔습니다...^^)






$GLOBALS : 스트립트의 전역 유효영역에서 쓸수있는 모든 변수에 대한 참조를 포함한다. 이 배열의 key는 전역 변수들의 이름이다. PHP 3 이래로 $GLOBALS가 존재해왔다.



$_SERVER : 웹서버나, 현재 스크립트의 실행환경에 직접적으로 관련되어 설정되는 변수이다. 구버전의 $HTTP_SERVER_VARS 배열과 동일하다.



$_GET : HTTP GET에 의해 스크립트로 제공되는 변수이다. 구버전의 $HTTP_GET_VARS 배열과 동일하다.



$_POST : HTTP POST에 의해 스크립트로 제공되는 변수이다. 구버전의 $HTTP_POST_VARS 배열과 동일하다.



$_COOKIE : HTTP 쿠키에 의해 스크립트로 제공되는 변수이다. 구버전의 $HTTP_COOKIE_VARS 배열과 동일하다.



$_FILES : HTTP post 파일 업로드에 의해 스크립트로 제공되는 변수이다. 구버전의 $HTTP_POST_FILES 배열과 동일하다. 더 자세한 정보는 POST 메소드 업로드를 참고하도록 한다.



$_ENV : 환경에 의해 스크립트로 제공되는 변수이다. 구버전의 $HTTP_ENV_VARS 배열과 동일하다.



$_REQUEST : GET, POST, COOKIE 입력 메카니즘을 통해 스크립트로 제공되는 변수이다. 이 메카니즘은 신용될수는 없다. 이 배열 안에 포함된 존재하는 변수와 변수의 나열 순서는 PHP variables_order 설정 디렉티브에 의해 정의된다. 이 배열은 PHP 4.1.0 이전 버전에서 동일한 변수가 존재하지 않는다.



$_SESSION : 스크립트의 세션에 등록되는 변수이다. 구버전의 $HTTP_SESSION_VARS 배열과 동일하다. 더 자세한 정보는 Session handling functions섹션을 참고.







위와 같은 슈퍼전역변수들이 존재한다는 것을 알아두시기 바랍니다...^^


이번엔 가변변수라는 것을 알아보겠습니다. 가변 변수는 변수를 선언하고 해당 변수를 다른 변수값을 이용해서 접근하는 방식입니다. 음 좀 말이 이상한데요...예를 들어보겠습니다.



<?
$abc = "테스트";
$test = "abc";

echo ${$test};
?>



위 소스를 실행 하면 테스트라고 출력됩니다. 바로 ${$test} 가 가변변수가 되는 것인데요. 이 부분을 한번 풀어 써보시면 이해가 쉬우리라 생각됩니다. 중괄호 안에 있는 $test 를 변경해 보면? ${abc} 가 되죠. 그럼 소스가 말하고 있는 것은 echo $abc; 가 되는 것입니다. 이런 것이 과연 어디에 유용할지 궁금하시다고요? 아래 예제를 보세요.



음 우선 $a1 ~ $a100 까지의 변수가 있다고 가정하고 이 변수들 값을 출력하고자 한다면?



echo $a1;
echo $a2;
.
.
.
echo $a99;
echo $a100;



휴~이렇게 100번을 써야겠네요. 하지만 가변변수를 이용하면...



for($i=1;$i<=100;$i++) {
   $tmp = "a".$i;
   echo ${$tmp};
}



위와 같이 100번을 쓰실 필요 없이 정말 간단히 해결이 되었습니다.
앞으로 난이도가 높아질 수록 가변변수의 중요성은 직접 느끼시리라 생각됩니다...^^



3. Constants 상수



마지막으로 상수에 대해서 알아보겠습니다. 음 배열강좌의 참고사항에서 잠시 언급한적이 있지요...^^a


상수란 변수와 반대의 개념으로 변하지 않는 고정된 값을 말합니다.

상수를 이용하기 위한 몇가지 규칙을 알아보겠습니다.



1. define() 함수를 이용해서 생성한다.
2. 문자 또는 언더바(_) 로 시작된다.
3. $ 표시를 이용하지 않는다.
4. 스칼라 데이터(boolean, integer, float 과 string)만 상수의 값으로 사용할 수 있다.
5. 상수는 어디서나 선언되고 사용될 수 있다. 하지만 값을 변경할 수는 없다.



상수에 대해서는 위와 같이 5가지만 기억하시면 되겠습니다.
그럼 한번 상수를 만들어 보겠습니다.



<?
define("TEST", "테스트 입니다.");

echo TEST;
?>



위 예제는 '테스트 입니다.' 를 출력합니다. 간단하지요.
음 그런데 역시 상수에도 슈버전역변수 처럼 미리 정의된 상수가 존재 합니다. 음 내용이 많기 때문에 아래 3개의 링크에서 확인해 주시기 바랍니다.



http://kr.php.net/manual/kr/language.constants.predefined.php
http://kr.php.net/manual/kr/reserved.constants.core.php
http://kr.php.net/manual/kr/reserved.constants.standard.php

반응형

댓글


Copyright ⓒ SmartWeb All rights reserved.