我有一个返回pdf文件的操作的路径。现在,如果url包含文件扩展名.pdf
,那就没问题了。如果我的路线的最后一部分不是一个段,它应该可以工作但不是我的情况。
作品
'my_route' => [
'type' => 'segment',
'may_terminate' => true,
'options' => [
'route' => '/my-file.pdf',
'defaults' => [
'action' => 'file'
]
]
],
不起作用
'my_route' => [
'type' => 'segment',
'may_terminate' => true,
'options' => [
'route' => '/my-file/:year.pdf',
'constraints' => [
'year' => '\d{4}'
],
'defaults' => [
'action' => 'file',
'year' => date('Y')
]
]
],
答案 0 :(得分:0)
这是使用Regex路线(未经过完全测试)的示例:
'my_route' => [
'type' => 'regex',
'may_terminate' => true,
'options' => [
'route' => '/my-file/(?<year>\d{4}).pdf?',
'constraints' => [
'defaults' => [
'action' => 'file',
'year' => date('Y')
]
]
],
请参阅文档:https://framework.zend.com/manual/2.4/en/modules/zend.mvc.routing.html#zend-mvc-router-http-regex
答案 1 :(得分:0)
您可以将其调整为:
'route' => '/my-file/:year:.pdf',
请注意参数
后的额外: