我有一个简单的 API 端点设置如下:
/**
*
* @QueryParam(name="originLat", requirements="\d+", strict=true, nullable=false)
* @QueryParam(name="originLng", strict=true, nullable=false)
* @QueryParam(name="departureTime", requirements="/\d{4}-[01]\d-[0-3]\d [0-2]\d:[0-5]\d:[0-5]\d/", strict=true, nullable=false)
*
* @param ParamFetcher $paramFetcher
*/
public function getWalkingJourney(ParamFetcher $paramFetcher)
{
$dTime = $paramFetcher->get('departureTime');
$oLat = $paramFetcher->get('originLat');
$oLng = $paramFetcher->get('originLng'),
}
如果我传递一个简单的数字,originLat 的 [QueryParam][1] 工作正常,但更复杂的离开时间正则表达式总是失败并显示以下消息:
Parameter "departureTime" of value "2016-09-13 14:47:36" violated a constraint "Parameter 'departureTime' value, does not match requirements '/\d{4}-[01]\d-[0-3]\d [0-2]\d:[0-5]\d:[0-5]\d/'"
这似乎违反直觉,因为这是正确的正则表达式。
我在这里做错了吗?