我正在阅读一篇关于在 laravel 中创建角色和权限的文章。我在...函数括号内看到了三个点,比如public function hasRole(... $roles ) {我不明白这里三个点的目的是什么...。示例链接: https: //www.larashout.com/laravel-roles-and-permissions/** * @param mixed ...$roles * @return bool */public function hasRole(... $roles ) { foreach ($roles as $role) { if ($this->roles->contains('slug', $role)) { return true; } } return false;}提前致谢。
1 回答
DIEA
TA贡献1820条经验 获得超2个赞
这是 PHP 的一个特殊的一元运算符,称为“扩展运算符”,它允许您在方法中使用可变长度参数,即该方法可以采用 0 个或多个参数作为可变长度参数。
下面是一个更好理解的例子:
例如
<?php
function sum(...$numbers) {
$acc = 0;
foreach ($numbers as $n) {
$acc += $n;
}
return $acc;
}
echo "\n".sum(1, 2, 3, 4);
echo "\n".sum(1);
echo "\n".sum();
输出:
10
1
0
参考:https://www.php.net/manual/en/functions.arguments.php#functions.variable-arg-list
- 1 回答
- 0 关注
- 108 浏览
添加回答
举报
0/150
提交
取消