2010年09月03日

php:可変長引数を受け取って別の可変長引数の関数に渡す

phpで可変長引数を受け取って別の可変長引数の関数に渡す。
引数を配列にして渡せる"call_user_func_array"を使用する。

ex.)test2が受け取った引数に1つ追加してtestに渡す。
function test() {
$cnt = func_num_args();
echo "引数の数:".$cnt."<br>\n";
$params = func_get_args();
while (list($idx, $value) = each($params)) {
echo "第".($idx+1)."引数:".$value."<br>\n";
}
}

function test2() {
$args = func_get_args();
call_user_func_array("test",array_merge(array("aaa"), $args));
}
test2("xxx", 123, "yyy");

   ↓

引数の数:4
第1引数:aaa
第2引数:xxx
第3引数:123
第4引数:yyy


posted by 忘却の達人 at 22:16| Comment(0) | TrackBack(0) | php | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。