유용한 함수 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년 전 | 648 | ||
| 7629 |
|
10년 전 | 2379 | |
| 7628 | 10년 전 | 786 | ||
| 7627 |
|
10년 전 | 1017 | |
| 7626 |
|
10년 전 | 1785 | |
| 7625 | 10년 전 | 692 | ||
| 7624 | 10년 전 | 710 | ||
| 7623 |
|
10년 전 | 3075 | |
| 7622 | 10년 전 | 720 | ||
| 7621 |
leeleeleelee
|
10년 전 | 581 | |
| 7620 | 10년 전 | 537 | ||
| 7619 | 10년 전 | 479 | ||
| 7618 | 10년 전 | 1013 | ||
| 7617 | 10년 전 | 722 | ||
| 7616 | 10년 전 | 633 | ||
| 7615 | 10년 전 | 725 | ||
| 7614 | 10년 전 | 1254 | ||
| 7613 |
|
10년 전 | 2082 | |
| 7612 | 10년 전 | 1137 | ||
| 7611 | 10년 전 | 1405 | ||
| 7610 |
|
10년 전 | 1898 | |
| 7609 |
|
10년 전 | 1330 | |
| 7608 |
mwdkim
|
10년 전 | 1126 | |
| 7607 |
|
10년 전 | 1050 | |
| 7606 |
mwdkim
|
10년 전 | 3923 | |
| 7605 | 10년 전 | 685 | ||
| 7604 | 10년 전 | 1023 | ||
| 7603 | 10년 전 | 1645 | ||
| 7602 |
|
10년 전 | 1067 | |
| 7601 |
AniNest
|
10년 전 | 2785 | |
| 7600 |
port443
|
10년 전 | 1022 | |
| 7599 | 10년 전 | 942 | ||
| 7598 | 10년 전 | 1014 | ||
| 7597 | 10년 전 | 4567 | ||
| 7596 |
SeungYeon
|
10년 전 | 886 | |
| 7595 |
untitled
|
10년 전 | 2415 | |
| 7594 |
프로그래머7
|
10년 전 | 1718 | |
| 7593 |
untitled
|
10년 전 | 2357 | |
| 7592 |
untitled
|
10년 전 | 1932 | |
| 7591 |
untitled
|
10년 전 | 2673 | |
| 7590 |
아리마2001
|
10년 전 | 850 | |
| 7589 | 10년 전 | 1108 | ||
| 7588 |
|
10년 전 | 2913 | |
| 7587 | 10년 전 | 1301 | ||
| 7586 | 10년 전 | 666 | ||
| 7585 | 10년 전 | 1688 | ||
| 7584 | 10년 전 | 1409 | ||
| 7583 |
leeleeleelee
|
10년 전 | 1157 | |
| 7582 |
|
10년 전 | 1104 | |
| 7581 | 10년 전 | 1323 | ||
| 7580 | 10년 전 | 984 | ||
| 7579 |
|
10년 전 | 603 | |
| 7578 | 10년 전 | 1426 | ||
| 7577 |
|
10년 전 | 1870 | |
| 7576 | 10년 전 | 1383 | ||
| 7575 |
멋진남자임
|
10년 전 | 1459 | |
| 7574 | 10년 전 | 2115 | ||
| 7573 | 10년 전 | 3247 | ||
| 7572 | 10년 전 | 757 | ||
| 7571 |
|
10년 전 | 780 | |
| 7570 |
|
10년 전 | 1308 | |
| 7569 | 10년 전 | 1546 | ||
| 7568 |
this1mg
|
10년 전 | 1046 | |
| 7567 |
|
10년 전 | 755 | |
| 7566 | 10년 전 | 914 | ||
| 7565 |
Angel하늘
|
10년 전 | 989 | |
| 7564 |
seoldi
|
10년 전 | 1229 | |
| 7563 |
|
10년 전 | 1369 | |
| 7562 |
멋진남자임
|
10년 전 | 2078 | |
| 7561 | 10년 전 | 711 | ||
| 7560 |
leeleeleelee
|
10년 전 | 897 | |
| 7559 | 10년 전 | 5038 | ||
| 7558 |
RinaP
|
10년 전 | 776 | |
| 7557 |
|
10년 전 | 1237 | |
| 7556 | 10년 전 | 1190 | ||
| 7555 |
hyohyojj1234
|
10년 전 | 1656 | |
| 7554 | 10년 전 | 1089 | ||
| 7553 |
senseme
|
10년 전 | 1334 | |
| 7552 |
ehdltdoit
|
10년 전 | 1432 | |
| 7551 |
|
10년 전 | 1815 | |
| 7550 |
leeleeleelee
|
10년 전 | 1585 | |
| 7549 | 10년 전 | 2416 | ||
| 7548 | 10년 전 | 1835 | ||
| 7547 |
멋진남자임
|
10년 전 | 1957 | |
| 7546 | 10년 전 | 998 | ||
| 7545 |
ILMare1003
|
10년 전 | 1279 | |
| 7544 |
|
10년 전 | 1247 | |
| 7543 | 10년 전 | 881 | ||
| 7542 | 10년 전 | 653 | ||
| 7541 |
울라라라우
|
10년 전 | 861 | |
| 7540 | 10년 전 | 1596 | ||
| 7539 | 10년 전 | 927 | ||
| 7538 |
|
10년 전 | 1829 | |
| 7537 | 10년 전 | 3607 | ||
| 7536 |
Gaumi
|
10년 전 | 1407 | |
| 7535 |
프로그램은어려워
|
10년 전 | 1263 | |
| 7534 |
senseme
|
10년 전 | 1203 | |
| 7533 | 10년 전 | 1190 | ||
| 7532 | 10년 전 | 854 | ||
| 7531 | 10년 전 | 2044 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기