首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在php文档中,表示可选参数的方括号嵌套的含义是什么?

问在php文档中,表示可选参数的方括号嵌套的含义是什么?
EN

Stack Overflow用户
提问于 2013-12-18 20:19:11
回答 3查看 164关注 0票数 0

我知道方括号表示php文档中的可选参数。PHP文档中的参数,方括号?

但是括号的嵌套有什么意义吗?你应该先解决最里面括号内的参数吗,就像你在数学中对内括号中的内容进行求解一样?

换句话说,是这吗

代码语言:javascript
复制
string http_build_url ([ mixed $url [, mixed $parts [, int $flags = HTTP_URL_REPLACE [, array &$new_url ]]]] )

和

代码语言:javascript
复制
string http_build_url ([ mixed $url] [, mixed $parts] [, int $flags = HTTP_URL_REPLACE] [, array &$new_url ] )

等价物?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-12-18 20:27:43

不,它们不是等价物。

PHP参数是严格定位的,function([$1] [,$2] [,3])意味着您可以简单地将函数调用为function($3);,这是不正确的。

如果您希望只使用第三个可选参数调用一个函数,那么它必须被调用为function( , , $3);。

这就是为什么PHP.net的函数引用被列为function([$1 [,$2 [,$3]]])的原因

票数 1
EN

Stack Overflow用户

发布于 2013-12-18 20:22:13

不,因为如果只传递第一个param,则不需要,。这就是为什么它是下一个嵌套[, param ]声明的一部分。

示例:

代码语言:javascript
复制
function abc($a);      --> [$a]         (just a is optional. no , required)
function abc($a, $b);  --> [$a [, $b]]  (the , is only necessary if you pass $b as well)

Params是嵌套的,因为n+1th param需要存在nth param。这意味着如果你没有通过第一个,你就不能通过第二个param。

所有编程语言和其他技术文档都使用这种符号来描述可选参数。我不知道它是在哪里指定的,希望对此提供一些投入。

票数 2
EN

Stack Overflow用户

发布于 2013-12-18 20:21:37

参数总是按照列出的顺序排列。你不需要“解析”参数。

阅读你链接到的问题中的答案。这意味着每一个都是可选的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20667594

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档