Екологічний стандарт кодування Magento, здається, є (принаймні, таким чином) офіційним стандартом для розширень Magento 1:
https://github.com/magento-ecg/coding-standard
Але я не розумію міркування, що стоїть за всіма правилами, і правила нюхання коду лише своїми повідомленнями не дуже допомагають. Чи є детальна документація щодо стандарту? Я знаю загальні найкращі практики та керівництво розробників, але не можу знайти нічого конкретного щодо цих стандартів кодування.
Що мене найбільше турбує - це суворість щодо використання функцій PHP.
Наприклад: Чому заборонено функціонування PHP для кожної файлової системи ?
Я думаю, ви повинні використовувати Varien_Io_File
і Varien_File_Object
т.д., але навіть основні розробники не знають про всі класи Varien, і ви часто знаходите такі речі, як у Mage_ImportExport_Model_Import_Adapter_Csv
:
$this->_fileHandler = fopen($this->_source, 'r');
Отже, серцевина - не найкращий приклад, як часто.
Інші сумнівні заборонені функції ІМХО:
mb_parse_str
parse_str
parse_url
base64_decode
- так, він використовується в приміщенні, але заборони
eval
повинно бути достатньо, і є випадки законного використання, наприклад, кодування двійкових даних. І крім тогоjson_decode
(що не заборонено) для цього немає доступного основного помічника.
- так, він використовується в приміщенні, але заборони
По суті, моє запитання зводиться до: Де цей документ документально підтверджений? І / або є список "речей, які потрібно використовувати замість цих функцій PHP"?
Zend_Db
конструктор запитів генерувати будь-які запити SQL?
select
операцію, Zend_Db
використовуючи необроблений SQL як вхід? Я припускав, що саме це робить github.com/kalenjordan/custom-reports у бекенді .