Php 科哈纳3.2路线不匹配
这是产生问题的途径:Php 科哈纳3.2路线不匹配,php,regex,kohana,Php,Regex,Kohana,这是产生问题的途径: Route::set('api', 'api(/<action>(/<currency_data>(/<currency_value>)))', array( 'currency_data' => '(\d\-\d)|(\w\-\w)', 'currency_value' => '\d+(\.\d{1,2})?' )) ->defaults(array(
Route::set('api', 'api(/<action>(/<currency_data>(/<currency_value>)))',
array(
'currency_data' => '(\d\-\d)|(\w\-\w)',
'currency_value' => '\d+(\.\d{1,2})?'
))
->defaults(array(
'controller' => 'api',
'action' => 'get',
));
或
这两种情况都涵盖了,但最终都不起作用,为什么?
默认路由在引导的末尾(我知道有人会建议)
tnx只与一个字符匹配。因此,123-321与\d-\d不匹配,abc cba与\w-\w不匹配
如果这不是问题,那么请提供更多信息说明它如何“不起作用”。什么有效?你得到了什么结果,等等。我是个白痴,如果你们中有人想解决我的问题
我对第二个正则表达式进行了评论,并指出了它不起作用的明显原因…tnx everyonetnx dude它现在通过了第一个正则表达式(我添加了{1,4}在\d和\w之后,它像一个符咒一样工作,但是…是的,有一个但是:
我不能对最后一个参数使用浮点数…它不能通过,但整数可以正常工作?显然我错过了一些东西
/api/currency/123-321/123.00
/api/currency/abc-cba/123