用了好久的zend框架,只是学到皮毛而已,zf1还没有学好,zf2就问世了,我们这些IT农民工何时能休息一下,没有办法,现阶段农民工也得学习新技能,今天关于zf1中的$this->baseUrl(),我来说一下。

        $this->baseUrl()是视图助手,在本地联系的时候自己可以配置虚拟机,配置http.conf文件,开启mod_rewrite。可是如果买的虚拟机(空间)不支持mod_rewrite怎么办?不支持mod_rewrite情况下,普通的链接必须包含'index.php' ,而img、js链接不需要包含'index.php',这就不能同时使用$this->baseUrl()了,我的解决办法是重新自定义一个视图助手,让普通链接使用自定义的视图助手,img、js使用zf自带的视图助手,自定义的视图助手代码如下:

 

 
  
  1. /**  
  2.  * 普通链接使用的视图助手  
  3.  */ 
  4. class Zend_View_Helper_baseUrlIndex  
  5. {  
  6.     public function baseUrlIndex()  
  7.     {  
  8.         $fc = Zend_Controller_Front::getInstance();  
  9.         $baseUrl = $fc->getBaseUrl();    
  10.         return $baseUrl;  
  11.     }