Magento EKG Kodlama Standardı, Magento 1 eklentileri için standart olarak (en azından bir tür) resmi görünüyor:
https://github.com/magento-ecg/coding-standard
Ancak tüm kuralların arkasındaki gerekçeyi anlamıyorum ve kod iletici kuralları sadece mesajları ile birlikte yardımcı olmuyor. Standartla ilgili ayrıntılı bir dokümantasyon var mı? Yaygın olarak kullanılan en iyi uygulamaları ve geliştiricilerin rehberliğini biliyorum, ancak bu kodlama standartları hakkında özel bir şey bulamıyorum.
Beni en çok rahatsız eden şey PHP işlevlerini kullanmama konusundaki katılık.
Örneğin: PHP ile ilgili her dosya sistemi neden tek tek yasaklanmıştır ?
Sanırım, kullanmanız gerekiyor Varien_Io_File
, Varien_File_Object
vb. Ama temel geliştiriciler bile tüm Varien sınıflarının farkında değiller ve sıklıkla aşağıdaki gibi şeyler bulursunuz Mage_ImportExport_Model_Import_Adapter_Csv
:
$this->_fileHandler = fopen($this->_source, 'r');
Yani, çekirdek, sık sık, en iyi örnek değil.
Diğer IMHO şüpheli yasak fonksiyonlar:
mb_parse_str
parse_str
parse_url
base64_decode
- evet, arka iç mekanlarda kullanılıyor ancak yasak
eval
yeterli olmalı ve ikili verileri kodlamak gibi yasal kullanım durumları da var. Vejson_decode
bunun dışında (yasak değil) bunun için çekirdek yardımcı yoktur.
- evet, arka iç mekanlarda kullanılıyor ancak yasak
Temelde sorumu aşağıya çekiyor: Bu standart nerede belgeleniyor? Ve / veya "bu yerel PHP fonksiyonları yerine kullanılacak şeyler" listesi var mı?
Zend_Db
sorgu oluşturucunun herhangi bir SQL sorgusu oluşturabilmesi mümkün değil mi?
select
ifade oluşturamıyor Zend_Db
musunuz? Sanırım github.com/kalenjordan/custom-reports'un arka uçta yaptığı şey bu.