为什么我必须使用必需的参数? 时间:2012-05-31 作者:Reshat Belyalov 为什么,当我想使用add_filter( \'author_link\', \'foo\', 10, 3 ); function foo ( $link, $author_id, $author_nicename ) {} 我必须使用3个必需的参数?为什么我不能这样做:add_filter( \'author_link\', \'foo\' ); function foo ( $author_id ) {} 如果可以,请给我一些关于这方面的文献。PS WP初学者。 2 个回复 最合适的回答,由SO网友:Rarst 整理而成 您没有指定参数的数量,在这种情况下,它将默认为一个。从本质上讲,这个参数让您可以控制钩子将传递给函数的参数数量,这在大多数情况下都很重要,无法给出一般性的解释。简而言之,如果hook可以传递N个参数,那么您可以选择:传递1参数(默认值)传递(<=N通过指定number传递的参数不会通过指定0传递任何参数(罕见,但有时非常有用)。请注意,如果需要N,则无法更改传递的参数的顺序,如果需要N,则需要传递尽可能多的参数,然后忽略函数中不需要的参数(这只在少数挂钩中有意义,因为第一个参数往往是有意义的,很少是第二个)。 SO网友:Joshua Abenazer 如果您只需要第一个参数来完成工作,则无需指定参数的数量。如果您正在编写的函数可能需要额外的信息(参数),则需要指定参数的数目。第一个参数实际上是您应该在函数中返回的内容。其他参数充当助手,以获得所需的输出。 结束 文章导航