La norme de codage ECG Magento semble être (au moins une sorte) officielle en tant que norme pour les extensions Magento 1:
https://github.com/magento-ecg/coding-standard
Mais je ne comprends pas le raisonnement derrière toutes les règles, et les règles de renifleur de code avec leurs seuls messages n'aident pas beaucoup. Existe-t-il une documentation détaillée sur la norme? Je connais les meilleures pratiques courantes et le guide du développeur, mais je ne trouve rien de spécifique sur ces normes de codage.
Ce qui me dérange le plus, c'est la rigueur de ne pas utiliser les fonctions PHP.
Par exemple: Pourquoi chaque fonction PHP liée au système de fichiers est-elle interdite ?
Je suppose que vous êtes censé utiliser Varien_Io_File, Varien_File_Objectetc. mais même les développeurs principaux ne connaissent pas toutes les classes Varien et vous trouvez souvent des choses comme dans Mage_ImportExport_Model_Import_Adapter_Csv:
$this->_fileHandler = fopen($this->_source, 'r');
Ainsi, le noyau n'est pas le meilleur exemple, comme souvent.
Autres fonctions interdites contestables à mon humble avis:
mb_parse_strparse_strparse_urlbase64_decode- oui, il est utilisé dans les portes dérobées mais l'interdiction
evaldevrait être suffisante et il existe des cas d'utilisation légitimes, comme le codage de données binaires. Et à partjson_decode(ce qui n'est pas interdit), aucun assistant de base n'est disponible pour cela.
- oui, il est utilisé dans les portes dérobées mais l'interdiction
Essentiellement, ma question se résume à: Où cette norme est-elle documentée? Et / ou existe-t-il une liste de "choses à utiliser à la place de ces fonctions PHP natives"?
Zend_Dbgénérateur de requêtes ne devrait-il pas être capable de générer des requêtes SQL?
selectinstruction en Zend_Dbutilisant du SQL brut en entrée? J'ai supposé que c'est ce que github.com/kalenjordan/custom-reports fait dans le backend.