ホームページ > バックエンド開発 > PHPチュートリアル > PHPで関数に引数として配列を渡すにはどうすればよいですか?

PHPで関数に引数として配列を渡すにはどうすればよいですか?

DDD
リリース: 2024-11-10 06:03:02
オリジナル
841 人が閲覧しました

How to Pass an Array as Arguments to a Function in PHP?

配列ではなく配列を引数として渡す

PHP では、配列を引数のリストとしてオブジェクトに渡す方法があります。関数。これは、スプレッド演算子 (...) または call_user_func_array() を使用して実現できます。メソッドを見てみましょう:

スプレッド演算子 (PHP 5.6 で導入)

スプレッド演算子は、「スプラット演算子」とも呼ばれ、簡潔でパフォーマンスの高い方法です。配列を引数として解凍します。

function variadic(...$args) {
    echo implode(' ', $args);
}

$array = ['Hello', 'World'];

// Splatting the $array
variadic(...$array); // Output: 'Hello World'
ログイン後にコピー

インデックス付きの配列項目がマップされることに注意してください。キーではなく、位置に基づく引数。

call_user_func_array()

call_user_func_array() は、効率は劣りますが、配列を引数として渡すには依然として便利なメソッドです。

function variadic($arg1, $arg2) {
    echo $arg1 . ' ' . $arg2;
}

$array = ['Hello', 'World'];

// Using call_user_func_array()
call_user_func_array('variadic', $array); // Output: 'Hello World'
ログイン後にコピー

PHP 8 では、スプレッド演算子を使用するときに名前付き引数を活用できます。連想配列:

function variadic(string $arg2, string $arg1) {
    echo $arg1 . ' ' . $arg2;
}

$array = ['arg2' => 'Hello', 'arg1' => 'World'];

variadic(...$array); // Output: 'World Hello'
ログイン後にコピー

パフォーマンスと利便性が優れているため、スプレッド演算子が推奨される方法です。

以上がPHPで関数に引数として配列を渡すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート