猿问

如何在函数调用中跳过可选参数?

如何在函数调用中跳过可选参数?

好的,我完全忘记了如何在PHP中跳过参数。

让我们说:

function getData($name, $limit = '50', $page = '1') {
    ...}

我如何调用此函数以使middle参数采用默认值(即'50')?

getData('some name', '', '23');

以上是否正确?我似乎无法让这个工作。


慕村9548890
浏览 1004回答 3
3回答

慕姐4208626

你的帖子是正确的。不幸的是,如果您需要在参数列表的最后使用可选参数,则必须在最后一个参数之前指定所有内容。通常,如果要混合匹配,则为它们提供默认值''or null,如果它们是默认值,则不要在函数内部使用它们。

有只小跳蛙

有没有办法“跳过”之外的其他参数,而不是像指定一个默认false或null。由于PHP在这方面缺乏一些语法糖,你经常会看到这样的东西:checkbox_field(array(     'name' => 'some name',     ....));正如评论中雄辩地说的那样,使用数组来模拟命名参数。这提供了最大的灵活性,但在某些情况下可能不需要。至少你可以将大多数时候没想到的任何东西移动到参数列表的末尾。
随时随地看视频慕课网APP
我要回答