엄청난 공백의 시간을 걸쳐 PHP 입문부터 기초까지 4편을 시작합니다. 우선 저번시간에~ 아니 옛날에 배운내용을 살피자면 조건부터 따지는 while() {} 반복문과 조건 개수 조건에 대한 연산 을 하는 for(;;) {} 문을 배웠습니다. 이번 시간에는 함수에 대해서 배워보도록 하겠습니다.
함수, 어렵게 보이시죠 저의 설명을 잘따라 오신다면 함수를 금방 쉽게 점령할수 있습니다.
음 우선 간단한 예제를 보도록 하겠습니다.
for($i;$i<10;$i++) { echo "$i"; }
라는 문법이 있습니다. 그런데 여기서 for문이 어떻게 이 양식만 갖추면 반복되는지 의문이 생기지 않나요? 의문이 생긴다면 좀더 깊게 파들어가 봅시다.
우선 들어가기 앞서 for 는 PHP 에서 지원하는 기본합수입니다.
그리고
while($i<10) { $i = $i + 1; $echo "$i"; }
라는 while 문이 있습니다. while도 PHP에서 지원하는 기본함수입니다.
음 그런데 뭔가 규칙성이 보이기 시작했나요
함수명() 함수명(괄호) 가 왠지 눈에 띄지 않나요? 이것은 바로 함수의 아주 기초적인 활용방법입니다. 그럼 왜? 함수가 필요한지 아시나요? PHP 에서 기본으로 지원하는 함수쓰면되지 왜 이걸 따로 만들어야할까? 만들수는 없을까? 라는 생각이 들지 않나요?
오늘 이번시간에는 함수를 생성하는것을 배웁니다. 즉 for, while 부럽지 않는 나만의 독특한 함수를 만드는것입니다. 이 함수를 만들다 보면 나중에는 함수 몇개만으로 여러가지 복잡한 프로그램을 처리할수있습니다.
자, 우선 간단한 예제를 보고 시작하도록 하겠습니다.
<?
function sum3($a,$b,$c) {
$i = $a + $b + $c;
echo $i;
}
sum3("1","2","3");
?>
위와 같은 프로그래밍이 있습니다. 결과 출력은 어떻게 될까요?
답은 아래와 같습니다.
'6'이 출력됩니다.
그럼 또다른 예제를 보도록하겠습니다.
<?
function futt($a,$b,$c) {
$i = $a + $b + $c - $a + $c + $c * $b;
echo $i;
}
futt("1","2","3");
?>
위예제의 출력결과는 아래와 같습니다.
우선 서버는 아래와 같은 작업을 거칩니다.
futt("1","2","3"); 와 함수를 찾아라고 한다. 함수를 찾자!
음 이건 기본함수 정의가 아니야. 그럼 뭔가 임의 함수가 있겠지 찾자!
찾아서 임의 함수가 나오면 임의함수에 () 안의 값을 대입하여 그 함수를 실행해야지
$a = 1 , $b = 2 , $c = 3
와 대입완료 ! 그럼 작업을 수행하자!
$i = $a + $b + $c - $a + $c + $c * $b;
헉 뭥미 뭐이리 수행할께 적어? 금방 끝내겟다. 하하
$i = 1 + 2 + 3 - 1 + 3 + 3 * 2;
키핫 대입 완료 이제 연산하자
$i = 9
아핫 $i 는 9구나 그럼 9로 치고 다음 내용을 살피자
echo $i;
핫 $i 를 출력하자! 9 화면에 출력완료!
음 다음으로~ 어 '}' 네 마치구나.~ 나의 일은 끝~
이로써 이제 화면에는 9가 출력되는것입니다.
즉, 함수는 규칙을 만드는 행위라고 할 수 있습니다. 나중에 복잡한 프로그래밍이 될수록 함수사용이 아주 중요해지니 이것은 필히 알고 갑시다.
함수정의방법
function 함수명() { 함수가 불러와지면 실행될 영역 }
와 같습니다.
그럼 수고하셧습니다.
댓글 9개
게시글 목록
| 번호 | 제목 |
|---|---|
| 8050 | |
| 8048 | |
| 19969 |
MySQL
mysql 상태를 확인 하는 방법
|
| 19968 |
MySQL
mysql 실시간 processlist
|
| 19967 | |
| 19966 | |
| 19965 |
MySQL
mysql 일반적인 최적화 팁
|
| 19964 |
기타
간단한 리눅스 명령어
|
| 19963 | |
| 19962 |
MySQL
mysql 데이터 경로 바꾸기
|
| 19961 |
MySQL
mysql 운영팁. 느린 쿼리를 발견하기
|
| 28345 | |
| 31017 | |
| 19960 | |
| 19959 |
MySQL
mysql index에 대해..
|
| 19958 |
MySQL
구분자는 enum으로
|
| 19957 |
MySQL
mysql zerofill에 대해
|
| 8039 | |
| 8035 | |
| 8029 | |
| 28344 | |
| 28339 | |
| 8019 | |
| 28338 | |
| 8017 | |
| 8010 | |
| 8007 | |
| 8004 | |
| 8003 | |
| 28332 | |
| 28322 | |
| 7999 | |
| 28317 | |
| 20956 | |
| 7992 | |
| 20945 | |
| 28314 | |
| 20936 | |
| 20931 | |
| 7986 | |
| 20925 | |
| 7982 | |
| 7979 | |
| 7978 | |
| 7975 | |
| 28307 | |
| 7973 | |
| 7966 | |
| 28305 | |
| 7963 | |
| 28300 | |
| 7961 | |
| 28297 | |
| 28295 | |
| 7959 | |
| 19948 | |
| 19947 | |
| 28292 | |
| 31016 | |
| 19946 | |
| 19945 | |
| 28286 | |
| 7958 | |
| 7956 | |
| 7952 | |
| 7946 | |
| 28285 | |
| 28283 | |
| 19943 | |
| 7944 | |
| 7936 | |
| 7931 | |
| 28279 | |
| 24666 | |
| 24663 | |
| 7928 | |
| 7923 | |
| 19941 |
MySQL
phpMyAdmin 시간 늘리기
1
|
| 28274 | |
| 28257 | |
| 28249 | |
| 28248 | |
| 7914 | |
| 7912 | |
| 7911 | |
| 20912 | |
| 7908 | |
| 31755 |
부트스트랩
부트스트랩 MIT 라이센스?
4
|
| 28233 | |
| 28232 | |
| 28228 | |
| 7903 | |
| 28217 | |
| 20900 | |
| 24662 | |
| 20891 | |
| 20882 | |
| 19936 | |
| 20853 | |
| 31011 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기