Php Restler可选字符串参数
我想在Restler补丁方法中将一个参数标记为可选的,它的类型是string,但我不知道如何做到这一点。如果我将Php Restler可选字符串参数,php,restler,Php,Restler,我想在Restler补丁方法中将一个参数标记为可选的,它的类型是string,但我不知道如何做到这一点。如果我将$description=null作为参数,则路由器出现故障,并显示一条消息,说明description是必需的参数 我也不能只使用空字符串,因为这是一种补丁类型的方法,所以我必须能够区分想要通过传递空字符串来清空描述的人和没有传递任何更新的空值的人。保持$description到null效果很好。只需确保所有可选参数都显示在api方法中所需参数之后。这是一个php限制 下面是我如何测
$description=null
作为参数,则路由器出现故障,并显示一条消息,说明description
是必需的参数
我也不能只使用空字符串,因为这是一种补丁类型的方法,所以我必须能够区分想要通过传递空字符串来清空描述的人和没有传递任何更新的空值的人。保持
$description
到null
效果很好。只需确保所有可选参数都显示在api方法中所需参数之后。这是一个php限制
下面是我如何测试它的
创建一个基本的restler项目。然后编辑rest/src/Home.php以添加补丁方法
<?php
class Home
{
public function index()
{
return [
'success' => [
'code' => 200,
'message' => 'Restler is up and running!',
],
];
}
public function patch($name, $description = null)
{
return compact('name', 'description');
}
}
api结果是
{
"name": "arul",
"description": null
}
这是预期的结果谢谢,阿鲁尔。我错误地在这个参数之后添加了非可选参数。您关于PHP需求的提醒解决了我的问题。
{
"name": "arul"
}
{
"name": "arul",
"description": null
}