如何使用Restler 3在体内制作可选参数?

时间:2012-10-23 17:50:26

标签: php restler

我希望JSON主体中的某些参数是可选的。我制作了phpdocs并将参数设置为null:

/**
 * Create a new text
 *
 * @param int $product_id       product id
 * @param int $template_id      {@from body} template id
 * @param string $language      {@from body} the language of the text
 * @param string $name          {@from body} product name
 *
 * @url POST {product_id}/texts
 */
public function postText($product_id, $template_id, $market_id = null)
{ }

但是Restler给了我:

{
   "error": {
   "code": 400,
   "message": "Bad Request: market_id is missing."
   }
}

如何指定参数是可选的?

1 个答案:

答案 0 :(得分:2)

知道了。我的代码不完整,我实际上有多个参数,如:

function($a, $b = null, $c, $d = 5)

问题是$b是必需的,尽管我已经为它设置了一个值。通过将所有可选参数放在最后来解决问题,如下所示:

function($a, $c, $b = null, $d = 5)