php的三个点意思…

PHP的三个点(…)在不同的场合下可以表示不同的含义,以下是一些常见的用法:

可变参数

在函数声明时,可以使用三个点表示可变参数(Variadic Parameters),也称作参数展开(Argument Unpacking):

1

2

3

4

5

6

7

8

function foo(…$args) {

foreach ($args as $arg) {

echo $arg, ;

}

}

foo(1, 2, 3);

// 输出:1 2 3

登录后复制

这样定义的函数可以接受任意个数的参数,并将它们作为一个数组传递给函数体。

数组展开

在数组前面使用三个点可以将数组展开(Array Unpacking)为一连串的参数,可以在函数调用或数组合并时使用:

1

2

3

4

5

6

7

$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 )

登录后复制

这样使用可以在不修改原数组的情况下,将已有的数组元素插入到函数或数组中。

对象展开

PHP 7.4 引入了新特性:在对象前面使用三个点可以将对象的公共属性展开为数组,例如:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

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 )

登录后复制

这种用法可以方便地将对象的属性转化为数组,更加易读且可复用。

总结:

三个点作为一个运算符,在不同的上下文中具有不同的解释,这让PHP的语法更加灵活和易用。学习并掌握三个点的用法,可以帮助我们更好地编写代码。

以上就是php的三个点意思…的详细内容,更多请关注php中文网其它相关文章!

TG交流群(点击进入)----付费帮助搭建---修复---二开,以及发布求资源.
QQ交流群 922260178
© 版权声明
THE END
喜欢就支持一下吧
点赞1.7W+ 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容