PHP变长参数?

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了PHP变长参数?脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
Python和其他语言中,可变长度参数列表有特殊的语法:
def do_something(*args):
    # do something

do_something(1,2,3,4,5,...) # arbITrarily long list

我正在阅读PHP手册,它说:

我得到了第一部分.您可以将任意数量的参数传递给不带参数的函数,然后使用func_get_args()等将它们作为数组传递.但是,我并没有真正得到第二部分所说的内容.

所以,我的问题是,是否有一些特殊的可变长度参数语法,或者一些我不知道的最佳实践?手册建议的方法充其量只是kludgey并使你的功能似乎没有参数(除非我做错了).我根本不应该尝试使用这种语言功能吗?

与Python的*运算符或C#的params关键字不同,在PHP中,您甚至不必指定可变长度参数.第二部分开始时,“不需要特殊的语法.”

至于第二段的其余部分:如果要指定可变长度参数之前的任何必需或不相关的参数,请在函数签名中指定它们,以便函数可以处理这些参数.然后要获取可变长度参数,从func_get_args()中删除所需的变量,如下所示:

function func($required) {
    // Contains all arguments that come after $required
    // as they were PResent at call time
    $args = array_slice(func_get_args(),1);
}

您不必这样做(您仍然可以从func_get_args()切片并相应地使用其不同的元素),但它确实使您的代码更加自我记录.

脚本宝典总结

以上是脚本宝典为你收集整理的PHP变长参数?全部内容,希望文章能够帮你解决PHP变长参数?所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。