ZF-11297: Why is the default View Helper prefix Zend for custom Helpers?


By default, when using the ./application/views/helpers/ folder for custom View Helpers, the default prefix for classes is 'Zend_' and as far as I can tell, you need to use this if you don't want to add helper paths in the bootstrap/application.ini.

But why is this so? Why can't this be the application prefix (appnamespace in application.ini)? Or at the very least, accept both by default?

Also, it should be noted that on the Naming Conventions page, it says:

"Note: Important: Code that must be deployed alongside Zend Framework libraries but is not part of the standard or extras libraries (e.g. application code or libraries that are not distributed by Zend) must never start with 'Zend_' or 'ZendX_'."…

This tells me that using Zend_View_Helper_* for custom view helpers is actually against the Naming Conventions...


This is a legacy issue. When we first developed this functionality, the default module did not have a module "namespace" (currently, it's "Application"). Since we needed a vendor namespace for the helpers, we used "Zend_View" as the base.

Changing this at this time would break many applications developed prior to 1.8, and, as such, we cannot change this in the ZF 1.X series.