Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Zend framework Router默认情况下将大写字母替换为破折号?_Php_Zend Framework_Url_Router_Zend Route - Fatal编程技术网

Php Zend framework Router默认情况下将大写字母替换为破折号?

Php Zend framework Router默认情况下将大写字母替换为破折号?,php,zend-framework,url,router,zend-route,Php,Zend Framework,Url,Router,Zend Route,如果我们在zend控制器的名称和动作之间使用大写字母,例如在我们创建的默认模块中 class MyGoodController extends Zend_Controller_Action { public fooBarAction() { } } 而访问此动作浏览器的url类似于mysite.com/my-good/foo-bar zf内部是否添加了管理此转换的默认zend路由器? 因为我想使用URL视图帮助器为我生成正确的链接,但它不适用于视图中的链接 $this->url(a

如果我们在zend控制器的名称和动作之间使用大写字母,例如在我们创建的默认模块中

class MyGoodController extends Zend_Controller_Action {

public fooBarAction()
{

}

}
而访问此动作浏览器的url类似于mysite.com/my-good/foo-bar

zf内部是否添加了管理此转换的默认zend路由器? 因为我想使用URL视图帮助器为我生成正确的链接,但它不适用于视图中的链接

$this->url(array('action'=>'fooBar','controller=>'myGood')); 

未生成正确的url,它生成了
/myGood/fooBa
r而不是
/myGood/foo bar
,如您需要使用的注释中所述:

$this->url(array('action'=>'foo-bar','controller=>'my-good'));
URL视图帮助器根据应用程序中的路由集组装链接

路由基于URL匹配请求

这实际上可以归结为关注点的分离。助手仅使用路由,而路由也仅处理URL中的内容。基于路由获取正确的类名是调度器关心的问题

最好让路由只处理URL中的内容,因为调度器可以更改。使用标准dispatcher可能适合您的内容可能不适合使用其他dispatcher的其他人


要完成您的要求,您可以始终使用自定义视图帮助器为您进行转换,但前提是您从未更改dispatchers

如您需要使用的注释中所述:

$this->url(array('action'=>'foo-bar','controller=>'my-good'));
URL视图帮助器根据应用程序中的路由集组装链接

路由基于URL匹配请求

这实际上可以归结为关注点的分离。助手仅使用路由,而路由也仅处理URL中的内容。基于路由获取正确的类名是调度器关心的问题

最好让路由只处理URL中的内容,因为调度器可以更改。使用标准dispatcher可能适合您的内容可能不适合使用其他dispatcher的其他人


要完成您的要求,您可以始终使用自定义视图帮助器为您进行转换,但前提是您从未更改dispatchers

为什么不直接使用
$this->url(数组('action'=>'foo-bar','controller=>'my-good')
?@brady vitrano如果没有其他默认路由器执行此魔术,那么zf为什么不检查url view helper实现中的大写字母,从而在默认情况下为我们创建正确的url?为什么不直接使用
$this->url(数组('action'=>'foo-bar','controller=>'my-good')?@brady vitrano如果没有其他默认路由器执行此魔法,那么zf为什么不检查url视图帮助器实现中的大写字母,从而在默认情况下为我们创建正确的url?