php の 3 つの意味

王林
王林オリジナル
2023-05-07 11:13:071395ブラウズ

PHP の 3 つのドット (...) は、状況に応じて異なる意味を表すことができます。一般的な使用法をいくつか次に示します:

  1. can 変数パラメーター
    関数を宣言するとき、3 つのドットを使用して変数パラメーター (可変引数パラメーター) を表すことができます。これは、パラメーターのアンパック (引数のアンパック) とも呼ばれます。

    function foo(...$args) {
     foreach ($args as $arg) {
         echo $arg, ' ';
     }
    }
    
    foo(1, 2, 3);
    // 输出:1 2 3

    この方法で定義された関数は、任意の数のパラメーターを受け入れ、それらを渡すことができます。関数本体を配列として。

  2. 配列のアンパック
    配列の前に 3 つのドットを使用して、配列を一連のパラメーターに展開します (配列のアンパック)。これは、関数を呼び出したり、配列を結合したりするときに使用できます。

    $numbers = [1, 2, 3];
    echo max(...$numbers);  // 等同于 max(1, 2, 3)
    
    $fruits = ['apple', 'banana'];
    $food = [...$fruits, 'mango', 'orange'];
    print_r($food);
    // 输出:Array ( [0] => apple [1] => banana [2] => mango [3] => orange )

    このように使用すると、元の配列を変更せずに、既存の配列要素を関数または配列に挿入できます。

  3. オブジェクトの展開
    PHP 7.4 では、新しい機能が導入されています。オブジェクトの前に 3 つのドットを使用すると、オブジェクトのパブリック プロパティを配列に展開できます。たとえば、次のとおりです。

    class Person {
     public $name;
     public $age;
     public $gender;
    
     public function __construct($name, $age, $gender) {
         $this->name = $name;
         $this->age = $age;
         $this->gender = $gender;
     }
    }
    
    $person = new Person('Tom', 32, 'male');
    $personArray = ['address' => 'Beijing', ...$person];
    print_r($personArray);
    // 输出:Array ( [address] => Beijing [name] => Tom [age] => 32 [gender] => male )
    この使用法により、オブジェクトのプロパティを配列に簡単に変換でき、読みやすく再利用しやすくなります。

要約:

3 つのドットは演算子として機能し、さまざまなコンテキストでさまざまな解釈を行うため、PHP の構文はより柔軟で使いやすくなります。 3 つのポイントの使用法を学びマスターすることは、コードをより良く書くのに役立ちます。

以上がphp の 3 つの意味の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。