유용한 함수 call_user_func
(PHP 4, PHP 5)
call_user_func — Call a user function given by the first parameter
첫번째 인자로 주어진 문자열과 같은 이름의 함수를 실행시키고 그 함수의 실행결과의 리턴값을 반환
Description
mixed call_user_func ( callback $function [, mixed $parameter [, mixed $... ]] )
Call a user defined function given by the function parameter.
위의 설명만으로는 이해를 하기 힘든 면이 있습니다.
call_user_func 함수는 쉽게 애기하면
특정 조건에 따라 유동적으로 다른 함수를 적용 하고자 할때 많이 쓰입니다.
즉, 갯수가 몇개 안되거나 어떤 쓰임이 완전이 정해진 경우에는
function function1(){
.......
}
function function2(){
.......
}
function function3(){
.......
}
switch($type){
case 1 :
$result = function1();
break;
case 2 :
$result = function2();
break;
case 3 :
$result = function3();
break;
default :
die('type error : ' . $type);
}
와 같이 switch 를 사용하여 함수를 호출해주면 됩니다.
그러나 경우의 수가 많거나. 특정 규칙이 존재한다면
위의 switch 구문은 아래와 같이 쓸수 있습니다.
$function_name = 'function' . $type;
$result = call_user_func($function_name) or die('type error : ' . $type);
또는
$result = call_user_func('function' . $type) or die('type error : ' . $type);
call_user_func 의 두번째 인자부터는
생략할수도 있고 무한대로 설정가능합니다.
단, 실행하고자 하는 함수의 인자의 갯수와 일치합니다.
위의 예제에서는 호출하고자 하는 함수가 인자 없는 함수라서 call_user_func(함수명) 과 같이 쓰였습니다.
아래의 예제에선 여러개의 인자를 넣는 경우의 예제입니다.
function add_1($v) {
return $v++;
}
$result = call_user_func('add_1', 1);
echo $result . "\n";
function sum_2($v1, $v2) {
return ($v1 + $v2);
}
$result = call_user_func('sum_2', 1, 5);
echo $result . "\n";
게시판 목록
프로그램
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 7630 | 10년 전 | 636 | ||
| 7629 |
|
10년 전 | 2361 | |
| 7628 | 10년 전 | 778 | ||
| 7627 |
|
10년 전 | 1010 | |
| 7626 |
|
10년 전 | 1770 | |
| 7625 | 10년 전 | 677 | ||
| 7624 | 10년 전 | 688 | ||
| 7623 |
|
10년 전 | 3041 | |
| 7622 | 10년 전 | 702 | ||
| 7621 |
leeleeleelee
|
10년 전 | 575 | |
| 7620 | 10년 전 | 531 | ||
| 7619 | 10년 전 | 466 | ||
| 7618 | 10년 전 | 1002 | ||
| 7617 | 10년 전 | 714 | ||
| 7616 | 10년 전 | 620 | ||
| 7615 | 10년 전 | 716 | ||
| 7614 | 10년 전 | 1235 | ||
| 7613 |
|
10년 전 | 2069 | |
| 7612 | 10년 전 | 1127 | ||
| 7611 | 10년 전 | 1391 | ||
| 7610 |
|
10년 전 | 1887 | |
| 7609 |
|
10년 전 | 1307 | |
| 7608 |
mwdkim
|
10년 전 | 1104 | |
| 7607 |
|
10년 전 | 1031 | |
| 7606 |
mwdkim
|
10년 전 | 3906 | |
| 7605 | 10년 전 | 678 | ||
| 7604 | 10년 전 | 1015 | ||
| 7603 | 10년 전 | 1636 | ||
| 7602 |
|
10년 전 | 1051 | |
| 7601 |
AniNest
|
10년 전 | 2771 | |
| 7600 |
port443
|
10년 전 | 1008 | |
| 7599 | 10년 전 | 932 | ||
| 7598 | 10년 전 | 1000 | ||
| 7597 | 10년 전 | 4560 | ||
| 7596 |
SeungYeon
|
10년 전 | 878 | |
| 7595 |
untitled
|
10년 전 | 2403 | |
| 7594 |
프로그래머7
|
10년 전 | 1704 | |
| 7593 |
untitled
|
10년 전 | 2347 | |
| 7592 |
untitled
|
10년 전 | 1923 | |
| 7591 |
untitled
|
10년 전 | 2664 | |
| 7590 |
아리마2001
|
10년 전 | 836 | |
| 7589 | 10년 전 | 1093 | ||
| 7588 |
|
10년 전 | 2902 | |
| 7587 | 10년 전 | 1288 | ||
| 7586 | 10년 전 | 650 | ||
| 7585 | 10년 전 | 1668 | ||
| 7584 | 10년 전 | 1400 | ||
| 7583 |
leeleeleelee
|
10년 전 | 1145 | |
| 7582 |
|
10년 전 | 1084 | |
| 7581 | 10년 전 | 1309 | ||
| 7580 | 10년 전 | 962 | ||
| 7579 |
|
10년 전 | 593 | |
| 7578 | 10년 전 | 1407 | ||
| 7577 |
|
10년 전 | 1860 | |
| 7576 | 10년 전 | 1373 | ||
| 7575 |
멋진남자임
|
10년 전 | 1452 | |
| 7574 | 10년 전 | 2099 | ||
| 7573 | 10년 전 | 3229 | ||
| 7572 | 10년 전 | 753 | ||
| 7571 |
|
10년 전 | 774 | |
| 7570 |
|
10년 전 | 1296 | |
| 7569 | 10년 전 | 1530 | ||
| 7568 |
this1mg
|
10년 전 | 1034 | |
| 7567 |
|
10년 전 | 745 | |
| 7566 | 10년 전 | 907 | ||
| 7565 |
Angel하늘
|
10년 전 | 972 | |
| 7564 |
seoldi
|
10년 전 | 1217 | |
| 7563 |
|
10년 전 | 1355 | |
| 7562 |
멋진남자임
|
10년 전 | 2060 | |
| 7561 | 10년 전 | 689 | ||
| 7560 |
leeleeleelee
|
10년 전 | 885 | |
| 7559 | 10년 전 | 5023 | ||
| 7558 |
RinaP
|
10년 전 | 764 | |
| 7557 |
|
10년 전 | 1226 | |
| 7556 | 10년 전 | 1180 | ||
| 7555 |
hyohyojj1234
|
10년 전 | 1643 | |
| 7554 | 10년 전 | 1079 | ||
| 7553 |
senseme
|
10년 전 | 1325 | |
| 7552 |
ehdltdoit
|
10년 전 | 1421 | |
| 7551 |
|
10년 전 | 1809 | |
| 7550 |
leeleeleelee
|
10년 전 | 1571 | |
| 7549 | 10년 전 | 2405 | ||
| 7548 | 10년 전 | 1823 | ||
| 7547 |
멋진남자임
|
10년 전 | 1945 | |
| 7546 | 10년 전 | 986 | ||
| 7545 |
ILMare1003
|
10년 전 | 1266 | |
| 7544 |
|
10년 전 | 1226 | |
| 7543 | 10년 전 | 871 | ||
| 7542 | 10년 전 | 644 | ||
| 7541 |
울라라라우
|
10년 전 | 851 | |
| 7540 | 10년 전 | 1587 | ||
| 7539 | 10년 전 | 914 | ||
| 7538 |
|
10년 전 | 1822 | |
| 7537 | 10년 전 | 3599 | ||
| 7536 |
Gaumi
|
10년 전 | 1397 | |
| 7535 |
프로그램은어려워
|
10년 전 | 1251 | |
| 7534 |
senseme
|
10년 전 | 1196 | |
| 7533 | 10년 전 | 1181 | ||
| 7532 | 10년 전 | 842 | ||
| 7531 | 10년 전 | 2032 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기