사이트 내 전체검색
PHP
[php] [Function] 자주 쓰이는 내장함수
로빈아빠
https://cmd.kr/php/532 URL이 복사되었습니다.

본문

[Function] 자주 쓰이는 내장함수

basename -- 경로명에서 파일이름만 반환합니다
chgrp -- 파일의 그룹을 변환합니다
chmod -- 파일의 모드 변경
chown -- 파일의 소유자 변경
clearstatcache -- 파일의 통계(stat) 캐시를 삭제합니다.
copy -- 파일을 복사합니다
delete -- 실제로는 없는 명령
dirname -- 경로의 구성요소중에서 디렉토리 이름만 반환합니다.
disk_free_space -- Returns available space in directory
disk_total_space -- Returns the total size of a directory
diskfreespace -- 디렉토리의 사용가능한 공간을 반환합니다.
fclose -- 열려있는 파일 포인터를 닫습니다.
feof -- 파일의 끝이 파일포인터에 있는지 테스트합니다.
fflush -- 출력결과를 파일로 보냅니다.
fgetc -- 파일포인터로부터 문자 가져오기
fgetcsv -- 파일포인터에서 라인을 가져오고 CVS 에 맞게 변환합니다.
fgets -- 파일 포인터에서 라인 가져오기
fgetss -- 파일포인터에서 라인을 가져오고 HTML 태그를 없애기
file_exists -- 파일이 있는지 체크
file_get_contents -- Reads entire file into a string
file_put_contents -- Write a string to a file
file -- 파일전체를 배열로 읽어들임
fileatime -- 최근에 파일에 접근한 시간을 가져옴
filectime -- 파일의 아이노드 변경시간을 가져옵니다
filegroup -- 파일의 그룹을 가져옵니다
fileinode -- 파일의 아이노드를 가져옵니다
filemtime -- 파일이 수정된 시간을 가져옵니다
fileowner -- 파일의 소유자를 가져옵니다
fileperms -- 파일의 권한을 가져옵니다
filesize -- 파일의 크기를 가져옵니다
filetype -- 파일의 형식을 가져옵니다
flock -- 파일 잠김에 관한 간단한 도움말
fnmatch -- Match filename against a pattern
fopen -- 파일이나 URL을 엽니다
fpassthru -- 파일 포인터에 남아있는 모든 데이타를 출력합니다
fputs -- 파일 포인터에 기록하기
fread -- Binary-safe 파일 읽기
fscanf -- 형식에 따라서 파일로 부터 분석하여 입력하기
fseek -- 파일 포인터에서 찾기
fstat -- 오픈 파일 포인터를 사용하는 파일에 대한 정보 가져오기
ftell -- 파일포인터의 읽기/쓰기 위치 말하기
ftruncate -- 주어진 길이로 잘라내기
fwrite -- Binary-safe 파일 쓰기
glob -- Find pathnames matching a pattern
is_dir -- filename 이 디렉토리인지 아닌지 이야기하기
is_executable -- filename이 실행가능한 것인지 아닌지 이야기하기
is_file -- filename이 보통 파일인지 아닌지 이야기하기
is_link -- filename이 심볼릭 링크인지 아닌지 이야기하기
is_readable -- filename이 읽기 가능한 것인지 아닌지 이야기하기
is_uploaded_file -- file이 HTTP POST를 통해 업로드된 것인지 아닌지 이야기하기
is_writable -- filename이 쓰기가능한 것인지 아닌지 이야기하기
is_writeable -- Alias of is_writable()
link -- hard link 만들기
linkinfo -- 링크 정보 가져오기
lstat -- 파일이나 심볼릭 링크에 관한 정보를 제공
mkdir -- 디렉토리 만들기
move_uploaded_file -- 업로드된 파일을 다른곳으로 이동하기
parse_ini_file -- Parse a configuration file
pathinfo -- Returns information about a file path
pclose -- 진행되는 파일 포인터 닫기
popen -- 진행되는 파일 포인터를 열기
readfile -- 파일을 출력합니다
readlink -- symbolic link의 target 반환
realpath -- 표준화된 절대 경로명을 반환합니다
rename -- 파일을 새 이름으로 고치기
rewind -- 파일포인터의 위치를 되돌립니다(rewind).
rmdir -- 디렉토리 제거하기
set_file_buffer -- 주어진 파일 포인터에 파일 버퍼링 설정하기
stat -- file에 대한 정보 제공
symlink -- 심볼릭 링크 만들기
tempnam -- 유일한 파일 이름 만들기
tmpfile -- 임시 파일 만들기
touch -- 파일의 수정시간을 설정합니다
umask -- 현재의 umask를 변경하기
unlink -- 파일을 삭제하기


문자열 처리함수에 대해서 알아봅니다. 

strlen("문자열")=문자열의 길이값을 반환합니다. 한글은 2 byte 의 값으로 반환합니다.
trim(" 문자열 ")=문자열에서 앞뒤 공백을 제거합니다.
ltrim(" 문자열 ")=문자열에서 왼쪽 공백을 제거합니다.
rtrim(" 문자열 ")=문자열의 오른쪽 공백을 제거합니다.
chr(" 숫자 ")=숫자에 해당하는 ASCII 코드의 문자를 출력합니다.
ord(" 문자 ")=문자에 해당하는 ASCII 코드를 출력합니다.
addslashes(" 문자열 ")=문자열에서 특수문자가 있으면 백슬래시(\)를 덧붙여줍니다.
stripslashes(" 문자열 ")=문자열에서 백슬래시가 있으면 제거합니다.
nl2br(" 문자열 ")=\n 으로 되어있는 문장을 <br> 태그로 변환해 줍니다.
strip_tags(" 문자열 ")=문자열에서 태그가 있으면 모두 제거합니다.
strtolower(" 문자열 ")=문자열을 모두 소문자로 변환합니다.
strtoupper(" 문자열 ")=문자열을 모두 대문자로 변환합니다.
strip_tags(" 문자열 ")=태그를 읽어서 찍어준다.
explode("구분자" , "문자열")= 구분자를 기준으로 문자열을 나누어서 배열로 저장합니다.
 ex) $text = explode( "++" , "100++삼성++키보드++액정모니터" );
 [결과] $text[0] = "100";  $text[1] = "삼성";  $text[2] = "키보드";  $text[3] = "액정모니터" 가 각각 저장.

substr( "문자열" , "시작배열번호" , "길이" ) 문자열에서 원하는 길이만큼 문자열을 추출합니다.


수학관련 함수에 대해서 알아봅니다. 

ceil(실수)=소수를 무조건 올림합니다.
floor(실수)=소수를 무조건 내림합니다.
round(실수)=반올립합니다.
number_format(숫자)=천단위마다 , (콤마) 를 찍습니다.
rand( 최소값 , 최대값 )=최소값과 최대값 사이에서 난수를 발생시킵니다.
※ 최소 , 최대값을 지정하지 않으면 0 ~ 32767 사이에서 PHP 가 알아서 난수를 발생시킵니다.


시간관련 함수에 대해서 알아봅니다. 

time()=현재 UNIX 시간을 알아옵니다.
microtime()=소수점이하까지 정확한 시간을 알아옵니다.

※ UNIX 시간 : 1970년 1월 1일 0시 0분 1초부터 지금까지의 초(second)입니다.
date("시간구성" , "기준시간") 기준시간에 해당하는 시간을 가져옵니다.
( 기준시간이 없을경우에는 현재 시간을 가져옵니다. )
Y 연도를 네자리로 출력
w 요일을 한자리 숫자로 출력
y 연도를 두자리로 출력 
g 시간을 12시간제로 출력 (한자리 숫자로 출력)
M 월을 단축 영문자로 출력 (Mar , May 등) 
h 시간을 12시간제로 출력 (두자리 숫자로 출력)
F 월을 완전한 영문자로 출력 
G 시간을 24시간제로 출력 (한자리 숫자로 출력)
m 월을 두자리 숫자로 출력 
H 시간을 24시간제로 출력 (두자리 숫자로 출력)
n 한자리 월일경우에는 한자리로 출력 
a am pm 출력
d 일자를 두자리 숫자로 출력 
A AM PM 출력
j 일자 출력. 1~9까지는 한자리로 출력 
i 분을 두자리로 출력
l 완전한 영문자로 요일 출력 
s 초를 두자리로 출력
D 요일을 세자리 영문자로 출력 
t 해당월의 총 일수 출력

- mktime(시 , 분 , 초 , 월 , 일 , 년) 지정한 시간의 UNIX 시간을 알아옵니다.
- checkdate(월 , 일 , 년) 지정한 날이 맞으면 true 틀리면 false 값 반환.
- md5("문자") 문자열을 암호화 합니다.


정규표현식에 대해서 알아봅니다.  
 
^ : 처음에 바로 뒤의 문자열로 시작  ereg("^abcd",$str)  ex) abcdef , abcdgggg
$ : 마지막에 바로 앞의 문자열로 끝 ereg("abcd$",$str)  ex) parkabcd , adjiabcd 
. : 임의의 한 문자. ereg("a.d",$str)  ex) acd , afd , psafd , fswapd
? : 없거나 하나인 문자 ereg("ab?c",$str)  ex) c , abc
+ : 최소한 하나이상인 문자 ereg("ab+c",$str)  ex) abc , ababc , abababc
* : 없거나 그 이상인 문자 ereg("ab*c",$str)  ex) c , abc , ababc
{} : 개수  ereg("a{2,4}c",$str)  ex) a가 2개에서 4개 사이
[] : [ ] 안의 문자열 중에서 하나. ereg("a[bcd]",$str)  ex) ab , ac , ad 
[^] : [^문자]를 제외한 나머지 a[^0-9] a 다음에 숫자를 제외한 문자이면 참
() : 그룹화. ( ) 안의 문자를 그룹화 ereg("ab(cd){2}e",$str)  ex) abcdcde
[[:alpha:]] : 알파벳문자중 하나. [a-zA-Z] 와 동일
[[:digit:]] : 숫자 [0-9] 와 동일
[[:alnum:]] : 모든 숫자와 문자 [a-zA-Z0-9] 와 동일
[[:space:]] : 공백문자

$string = "by viewing these pages";
$res = eregi_replace("(t[[:alpha:]]+) ([a-z]+s$)","\\1",$string);
$res2 = eregi_replace("(t[[:alpha:]]+) ([a-z]+s$)","\\2",$string);
 
- eregi("찾을 단어" , "문자열") 찾을 단어가 있으면 true , 없으면 false
- eregi_replace("찾을단어" , "바꿀문자열" , 문자열);

정규표현식을 이용한 자동링크 및 이메일 체크하기 

ex)홈페이지 URL 자동으로 링크 시키기
eregi_replace("http://([-/.a-zA-Z0-9_~#%$?&=]+)" , "<a href='http://\\1' target='_blank'> http://\\1</a>" , "$list[content]");

ex. e-mail 자동으로 메일 링크 시키기
eregi_replace("(([_a-zA-Z0-9]+)@([-.a-zA-Z0-9]+))" , "<a href='mailto:\\1'>\\1</a>" , $email);

ex. e-mail 올바른지 체크하기.
$a = ereg("^[_0-9a-zA-Z-]+(\.[_0-9a-zA-Z-]+)*@[0-9a-zA-Z-]+ (\.[0-9a-zA-Z-]+)*$",$email);
if($a) { echo "올바른 이메일 주소입니다."; }


PHP 로 파일을 다루어봅니다. 

$파일포인터 = fopen("파일명" , "모드" ); : 파일을 특정모드로 엽니다.
fclose($파일포인터) : 열었던 파일을 종료하고 닫습니다.
 
※ 파일열기 모드의 종류
r : 읽기. 파일을 읽기 전용모드로 엽니다.
r+ : 읽기 쓰기. 파일의 맨 처음 부분에 쓰기를 합니다.
w : 쓰기. 존재하는 파일을 덮어쓰며 파일이 없으면 생성합니다.
a : 추가. 파일의 맨 마지막 지점에 쓰여지며, 파일이 없으면 생성합니다.
a+ : 읽기 추가. 파일 맨 마지막 지점에 쓰여지며, 파일이 없으면 생성합니다.

file_exists(" 파일명 ") : 파일이 존재하는지 알아옵니다. 존재하면 true
filesize(" 파일명 ") : 파일의 크기를 알아냅니다. (byte 단위로 값을 출력)
fwrite("파일포인터" , "문자열") : 열었던 파일안에 문자열을 씁니다.
fread("파일포인터" , "길이" ) : 열었던 파일에서 길이만큼 읽어옵니다.
copy( 원본 , 복사본 ) : 파일 원본을 복사본의 이름으로 카피합니다.
unlink(" 파일명 ")  : 파일명을 삭제합니다.


디렉토리 관련 함수 

$디렉토리핸들 = opendir("경로") : 경로에 해당하는 디렉토리를 엽니다.
readdir(디렉토리 핸들) : 디렉토리안의 내용을 읽어옵니다.
closedir(디렉토리 핸들) : 열었던 디렉토리를 닫습니다.
ex.
$dir = opendir(" ../public_html ");
while($list = readdir($dir)) { echo " $list <br> "; }
closedir($dir); 


외부명령어 실행하기 (리눅스 명령어 사용하기) 
 
- system(" 사용할 명령어" ,"결과를 담을 변수");
ex. system("df" , $list); -> $list 변수에 df 에 해당하는 결과가 저장된다.

- exec(" 사용할 명령어" , "결과 배열" , "결과값");
ex. exec("df" , $list , $result)


쿠키와 세션 (COOKIE & SESSION) 

1. 쿠키 (COOKIE)
- 서버가 필요한 정보를 사용자 시스템에 값을 저장. (4kyte 내외로 저장이 됩니다.)
- setcookie 함수가 호출되기 전에는 어떠한 html 코드나 실행결과도 먼저 출력되어서는 안됩니다.
[형식] setcookie("변수명" , "변수값" , "지속시간" , path , domain , 보안);
ex. setcookie("zioclub_id" , "my_family" , time()+3600);  -> 1시간동안 쿠키 유지.
- 변수명 , 변수값 , 지속시간 값의 3개만 주로 할당하여 사용합니다.
- 쿠키를 작성후 페이지를 새로고침을 한번 해주어야 쿠키변수값이 적용됩니다.

2. 세션 (SESSION)
- 서버가 필요한 정보를 서버에 저장.
- 사용자 pc 에 세션 아이디를 저장하고 서버의 파일과 비교해서 판단.
session_start()  : 세션을 시작합니다. 항상 첫줄에 사용합니다.
session_register("변수명") : 변수명을 세션변수로 등록합니다.
session_unregister("변수명") : 특정 변수명을 세션변수에서 삭제합니다.
session_unset() : 세션으로 등록한 모든 변수를 삭제합니다.


기타 유용한 PHP 함수 

- getenv("remote_addr") 접속자의 IP 주소 출력
- show_source("파일명") 파일의 source code 를 그대로 출력합니다.
- mail(받는이 , 제목 , 내용 , 메일헤더)


PHP 에서 지원하는 MySQL API 함수에 대해서 알아봅니다.
 
접속구분자 = mysql_connect(" 호스트명 " , "유저아이디" , "패스워드" ); MySQL 서버에 접속을 합니다.
mysql_close(접속구분자);  : 접속을 종료합니다.
mysql_select_db(데이터베이스이름 , 접속구분자); : 사용할 데이터베이스를 선택합니다.
질의 구분자 = mysql_query("MySQL 질의문" , 접속구분자); : 질의문을 작성합니다.
mysql_num_rows(질의 구분자) : 질의 결과 레코드의 갯수를 출력합니다.
mysql_result(질의구분자 , 열 , 필드) : 특정 열과 필드의 내용을 출력합니다.
mysql_fetch_row(질의구분자) : 질의결과값을 배열의 형태로 출력합니다.
mysql_fetch_array(질의구분자) : 연관배열의 형태로 출력합니다.
mysql_data_seek(질위구분자 , 열번호) : 해당 열번호부터 출력합니다.
mysql_list_tables(데이터베이스명 , 접속구분자) : 해당 데이터베이스의 테이블명 출력.
mysql_errno(); : MySQL 에러번호를 출력합니다.
mysql_error(); : MySSQL 에러내용을 출력합니다.

댓글목록

등록된 댓글이 없습니다.

PHP
871 (9/18P)

Search

Copyright © Cmd 명령어 18.119.133.206