(1) 변수 관련 함수 ☞ empty 함수 | 구문 : int empty(mixed var) 기능 : 변수가 설정되어 있는지 알아본다. |
변수가 설정되어 있지 않으면 true를 리턴하고, 값이 있으면 false를 리턴합니다. <파일명 : ex29.php> <? $a=""; $b="string"; if (empty($a)) echo "a empty<br>"; if (empty($b)) echo "b empty<br>"; ?> |
☞ isset 함수 | 구문 : int isset(mixed var) 기능 : 변수가 설정되어 있는지 알아본다. |
변수가 설정되어 있으면 true, 그렇지 않으면 false를 리턴합니다. 만약에 unset()으로 변수가 이미 해제되었다면 더 이상 isset()는 true를 리턴하지 않습니다. <파일명 : ex30.php> <? $a="string"; if (isset($a)) echo "1. a is set<br>"; unset($a); if (isset($a)) echo "2. a is set<br>"; ?> |
☞ unset 함수 | 구문 : int unset(mixed var) 기능 : 변수의 설정을 해제한다. |
변수의 설정을 해제한 루 true를 리턴합니다. (2) 문자열 관련 함수 ☞ addslashes 함수 | 구문 : string addslashes(string str) 기능 : 필요한 곳을 역슬래시(\)로 감싼다. |
문자열이 작은 따음표(')나 큰 따음표("), 또는 역슬래시(\)와 같은 문자를 가지고 있는 경우 이 문자 앞에 역슬래시(\)를 추가하여 전체 문자열을 반환합니다. 보통 SQL 문에서 작은 따음표나 큰 따음표에 역슬래시를 추가할 때 많이 사용합니다. <파일명 : ex31.php> <? $str="addslash 연습입니다. '연습'"; echo "addslash() 함수 사용 전 : $str <br>"; $str=addslashes($str); echo "addslash() 함수 사용 후 : " . $str . "<br>"; ?> |
☞ stripslashes 함수 | 구문 : string stripslashes(string str) 기능 : addslashes()로 역슬래시가 추가된 문자열에서 역슬래시를 제거한다. |
addslashes() 함수를 통해 역슬래시 처리가 된 문자에서 역슬래시(\) 문자를 제거하여 원 상태로 되돌립니다. <파일명 : ex32.php> <? $str="addslash 연습입니다. '연습'"; echo "addslashes() 함수 사용 전 : $str <br>"; $str=addslashes($str); echo "addslashes() 함수 사용 후 : $str <br>"; $str=stripslashes($str); echo "stripslashes() 함수 사용 후 : $str <br>"; ?> |
☞ echo 함수 | 구문 : echo(string arg1, string [argn] …) 기능 : 하나 또는 그 이상의 문자열을 출력한다. |
인자들을 모두 출력합니다. <파일명 : ex33.php> <? $str1="echo 연습입니다."; $str2="echo 사용하기"; echo $str1 . "<br>"; echo $str1.$str2; ?> |
☞ explode 함수 | 구문 : array explode(string separator, string string) 기능 : 구분자를 사용하여 문자열을 나눈다. |
첫 번째 인자를 구분자로 하여 두 번째 인자를 나누어 배열로 리턴합니다. <파일명 : ex34.php> <? $str="aaa;bbb;ccc;ddd;eee;fff;"; $array=explode(";",$str); for ($i=0, $max=count($array); $i<$max; $i++) { echo "$i = $array[$i] <br>"; } ?> |
☞ htmlspecialchars 함수 | 구문 : string htmlspecialchars(string string) 기능 : 특수문자들을 HTML 코드로 바꾼다. |
게시판이나 방명록 등에서 사용자가 입력한 특수문자들을 변환시킵니다. &(ampersand)를 '&'로 "(double quote)를 '"'로 <(less than)을 '&It;'로 >(greater than)을 '>'로 바꾸어 리턴합니다. 위의 4가지 특수문자를 제외한 나머지 문자는 변환하지 않습니다. <파일명 : ex35.php> <? $str="HTML 에서 <b>특수문자</b> 변환하기"; echo "htmlspecialchars() 사용 전 : $str <br>\n"; $str=htmlspecialchars($str); echo "htmlspecialchars() 사용 후 : $str <br>"; ?> |
☞ nl2br 함수 | 구문 : string nl2br(string string) 기능 : 개행(\n)을 <BR>태그로 바꾼다. |
폼으로 입력받을 때 입력하는 사람이 엔터를 치면 다음 줄로 넘어갑니다. 그런데 입력받은 내용을 데이터베이스에 넣고 나중에 출력할 때는 문자들이 모두 붙어서 나옵니다. 따라서 데이터베이스에서 내용을 얻어 브라우저로 보여줄 때 함수를 사용하면 다음 줄로 넘어가게 보입니다. <파일명 : ex36.php> <? $str="nl2br 을 위한 예제 한줄... 두줄... 세줄... "; echo "nl2br() 사용 전 : $str <br>\n"; $str=nl2br($str); echo "nl2br() 사용 후 : $str <br>"; ?> |
☞ printf 함수 | 구문 : string nl2br(string string) 기능 : 개행(\n)을 <BR>태그로 바꾼다. |
echo 함수와 비슷한 역할을 합니다. <파일명 : ex37.php> <? $a=14.5; $b=3.3; $sum=$a+$b; printf("%02.2f + %02.2f = %02.2f <br>", $a, $b, $sum); printf("결과값의 정수값 = %d", $sum); ?> |
☞ sprintf 함수 | 구문 : string sprintf(string format, mixed [args]...) 기능 : 포맷 문자열을 통해 지정해 준 포맷으로 문자열을 반환합니다. |
sprintf() 함수는 C에서 사용법과 비슷하게 지정해 준 포맷에 맞게 문자열을 반환합니다. <파일명 : ex38.php> <? $a=14.5; $b=3.3; $sum=$a+$b; $str=sprintf("%02.2f + %02.2f = %02.2f <br>", $a, $b, $sum); echo $str; $str=sprintf("정수값 = %d <br>", $sum); echo $str; $str=sprintf("실수값 = %f <br>", $sum); echo $str; ?> |
☞ strip_tags 함수 | 구문 : string strip_tags(string str, string [allowable_tags]) 기능 : 문자열에서 HTML과 PHP 태그를 제거한다. |
문자열 중에서 HTML과 PHP 태그를 제거한 문자열을 반환합니다. <파일명 : ex39.php> <? $str="strip_tags() 연습입니다. <b>HTML 태그</b> <? echo \"php 태그 \"; ?> "; echo ("strip_tags 사용 전 : $str <br>"); $str=strip_tags($str); echo ("strip_tags 사용 후 : $str <br>"); ?> |
☞ strlen 함수 | 구문 : int strlen(string str) 기능 : 문자열의 길이를 구한다. |
문자열의 길이를 리턴합니다. <파일명 : ex40.php> <? $str="We are the world"; echo ("$str 의 문자열 길이 = "); echo strlen($str); ?> |
☞ substr 함수 | 구문 : string substr(string string, int start, int [length]) 기능 : 문자열의 일부분을 리턴합니다. |
start로부터 length 만큼 리턴합니다. length가 생략되면 문자열의 끝까지 리턴합니다. start가 음수일 경우 뒤에서부터 리턴합니다. length가 음수일 경우 뒤에서부터 length까지만 리턴합니다. <파일명 : ex41.php> <? //start가 양수일 경우 $rest=substr("abcdef", 1); echo "$rest <br>"; $rest=substr("abcdef", 1, 3); echo "$rest <br>"; //start가 음수일 경우 $rest=substr("abcdef", -1); echo "$rest <br>"; $rest=substr("abcdef", -2); echo "$rest <br>"; $rest=substr("abcdef", -3,1); echo "$rest <br>"; //length가 음수일 경우 $rest=substr("abcdef", 1, -1); echo "$rest <br>"; ?> |
☞ trim 함수 | 구문 : string trim(string str) 기능 : 문자열의 시작과 끝의 공백을 없앤다. |
인자로 주어진 문자열의 맨 앞과 맨 끝의 공백을 지우고 리턴합니다. <파일명 : ex42.php> <? $str="\t 앞과 뒤쪽의 탭과 공백이 있는 문자\t "; echo "trim 사용 전 : $str <br>\n"; $str=trim($str); echo "trim 사용 후 : $str <br>"; ?> |
(3) 정규표현형식 관련 함수 ☞ ereg 함수 | 구문 : int ereg(string pattern, string string, array [regs]) 기능 : 일치하는 문자열을 찾는다. |
두 번째 인자(문자열)에서 첫 번째 인자(패턴)를 찾습니다. 패턴에 괄호가 포함되어 있으면 세 번째 인자를 필요로 합니다. 일치된 패턴이 세 번째 인자인 배열로 차곡차곡 들어갑니다. 예를 들어, 첫 번째 괄호와 일치된 문자열은 $regs[1] 안에 들어가고, 두 번째 괄호와 일치된 문자열은 $regs[2]에 들어갑니다. $regs[0]에는 두 번째 인자 전체가 들어가 있습니다. <파일명 : ex43.php> <? //YYYY-MM-DD 형식의 날짜를 DD.MM.YYYY 형식으로 출력하는 예제 $date=date("Y-m-d", time()); if (ereg("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})", $date, $regs)) { echo "$regs[3].$regs[2].$regs[1]"; } else { echo "잘못된 데이터 형식입니다.: $date"; } ?> |
☞ eregi 함수 | 구문 : int eregi(string pattern, string string, array [regs]) 기능 : 대소문자 구분 없이 일치하는 문자열을 찾는다. |
ereg()와 똑같습니다. 차이점은 대소문자 구별을 하지 않습니다. 두 번째 인자(문자열)에서 첫 번째 인자(패턴)를 찾습니다. 패턴에 괄호가 포함되어 있으면 세 번째 인자를 필요로 합니다. 일치된 패턴이 세 번째 인자인 배열에 차곡차곡 들어갑니다. 예를 들어, 첫 번째 괄호와 일치된 문자열은 $regs[1] 안에 들어가고, 두 번째 괄호와 일치된 문자열은 $regs[2]에 들어갑니다. $regs[0]에는 두 번째 인자 전체가 들어가 있습니다. ☞ ereg_replace 함수 | 구문 : string ereg_replace(string pattern, string replacement, array string) 기능 : 일치하는 문자열을 찾아 바꾼다. |
문자열(string)에서 패턴(pattern)을 찾아 바꿀문자(replacement)로 바꾼 후에 리턴합니다. 일치하는 패턴(pattern)이 없으면 원래의 문자열을 리턴합니다. 패턴(pattern)에는 괄호를 사용할 수 있습니다. 맨 바깥쪽 괄호부터 괄호 전체를 1,2,...로 생각하면 됩니다. <파일명 : ex44.php> <? $string="This is a test"; echo ereg_replace(" is", " was", $string) . "<br>\n"; echo ereg_replace("( )is", "\\1was", $string) . "<br>\n"; echo ereg_replace("(( )is)", "\\2was", $string) . "<br>\n"; ?> |
☞ eregi_replace 함수 | 구문 : string eregi_replace(string pattern, string replacement, array string) 기능 : 일치하는 문자열을 찾아 바꾼다. |
문자열(string)에서 패턴(pattern)을 찾아 바꿀문자(replacement)로 바꾼 후에 리턴합니다. 일치하는 패턴(pattern)이 없으면 원래의 문자열을 리턴합니다. ereg_replace()함수와 같은 기능입니다. 단지 차이는 대소문자를 무시한다는 것입니다. ☞ split 함수 | 구문 : string split(string pattern, string string, int [limit]) 기능 : 정규 표현식을 사용하여 문자열을 나눈 후 배열로 저장한다. |
패턴(pattern)으로 준 첫 번째 인자가 구분자가 되어 두 번째 인자의 문자열을 나누어 배열로 리턴합니다. 오류가 발생하면 false를 리턴합니다. limit는 나누어 저장할 문자열의 개수이며, 생략 가능합니다. 주의할 점은 패턴(pattern)으로 앞에서부터 나누어집니다. limit보다 뒤에 있는 문자열들은 나눠지지 않고 마지막 배열에 들어갑니다. <파일명 : ex45.php> <? $date="04/30/1998"; list($month, $day, $year)=split("[/.-]", $date); echo "Month: $month; Day: $day; Year: $year"; ?> |
(4) 배열 관련 함수 ☞ array 함수 | 구문 : array array(...) 기능 : 배열을 만든다. |
....부분에 매개변수가 들어갑니다. 매개변수는 '=>' 연산자를 이용하여 배열 인덱스에 넣을 수도 있습니다. 즉 array(키 => 값); <파일명 : ex46.php> <? $fruits=array("fruits" => "orange", "numbers" => 1); echo "fruits value = " . $fruits["fruits"] . "<br>"; echo "fruits numbers = " . $fruits["numbers"] . "<br>"; ?> |
☞ count 함수 | 구문 : int count(mixed var) 기능 : 변수가 가지고 있는 값들의 수를 리턴한다. |
주로 배열변수를 대상으로 합니다. 여기서 그냥 변수라고 한 것은 어느 변수든디 한가지 값은 가지고 있기 때문입니다. 변수가 배열이 아닐 경우 1을 리턴합니다.(배열변수가 아니면 그냥 한가지 값을 가집니다.) 변수가 정의되지 않았을 경우 0을 리턴합니다. [참고] 변수가 정의되지 않았을 경우 0을 리턴하지만, 배열변수가 공백으로 정의되었을 경우에도 0이 리턴됩니다. 변수가 정의되었는지 확인하려면 isset()함수를 사용합니다. <파일명 : ex47.php> <? $fruits = array("fruits" => "orange", "numbers" => 1); $array = array("a", "b", "c", "d", "e"); echo "fruits 배열의 개수 = " . count($fruits) . "<br>"; echo "array 배열의 개수 = " . count($array); ?> |
☞ each 함수 | 구문 : array each(array array) 기능 : 배열에서 현재 포인터가 가리키고 있는 키 값과 값을 리턴한다. |
배열 내부 포인터가 가리키고 잇는 키와 값을 리턴한 후 포인터는 다음 요소를 가르키게 됩니다. 실행하면 4개의 요소를 가진 배열로 리턴을 하는데 0과 key는 키 값을 가지고 있고, 1과 value는 값을 가지고 있습니다. <파일명 : ex48.php> <? $fruits = array("fruits" => "orange", "numbers" => 1); $result=each($fruits); echo "key = $result[0], value = $result[1] <br>"; list($key, $value)=each($fruits); echo "key = $key, value = $value <br>"; ?> |
☞ list 함수 | 구문 : void list(...) 기능 : 변수들을 배열처럼 쓸 때 사용한다. |
array()와 마찬가지로 변수들을 배열처럼 쓸 때 사용합니다. ☞ sizeof 함수 | 구문 : int sizeof(array array) 기능 : 배열의 크기를 구한다. |
배열 요소의 개수를 리턴합니다. count()와 같습니다. <파일명 : ex49.php> <? $array=array("shellfish", "wheat", "stock"); $num1=count($array); echo "count = " . $num1 . "<br>"; $num2=sizeof($array); echo "sizeof = " . $num2 . "<br>"; ?> |
☞ sort 함수 | 구문 : void sort(array array) 기능 : 배열을 정렬한다. |
배열 값들을 정렬합니다. <파일명 : ex50.php> <? $fruits=array("lemon", "orange", "banana", "apple"); sort($fruits); for ($i=0, $max=count($fruits); $i<$max; $i++) { echo "fruits[$i] = " . $fruits[$i] . "<br>"; } ?> |
|