A development principle , not only with Magento, is that you shouldn’t try to reinvent the wheel and especially use the functions of the used framework wherever possible. Magento has many more or less known universal helpers, in the helper classes in Mage_Core as well as in lib/Varien and of course in the Zend Framework.
A classic is for example JSON encoding. Although PHP has its built-in functions json_encode and json_decode, but they have some shortcomings that are compensated for in the Zend_Json implementation. So Zend_Json::encode()
has a cycle check, Magento added support for inline translations within JSON strings in Mage_Core_Helper_Data::jsonEncode()
. Thus in Magento you always should use Mage::helper('core')->jsonEncode()
(and jsonDecode).
Varien_File_Csv
How is it with processing CSV files? Since import and export works with CSV files in the standard implementation, Magento should have somthing, right? Presenting Varien_File_Csv
! Well, I’ll anticipate the result: except for very simple tasks with small files, the class is not useful at all.