Standard kodowania EKG Magento wydaje się (przynajmniej w pewnym sensie) oficjalny jako standard dla rozszerzeń Magento 1:
https://github.com/magento-ecg/coding-standard
Ale nie rozumiem, dlaczego kryją się za tym wszystkie reguły, a reguły sniffera kodu same w sobie z wiadomościami niewiele pomagają. Czy istnieje szczegółowa dokumentacja dotycząca normy? Znam najlepsze praktyki i przewodnik dla programistów, ale nie mogę znaleźć niczego konkretnego na temat tych standardów kodowania.
Najbardziej niepokoi mnie ścisłość związana z nieużywaniem funkcji PHP.
Na przykład: Dlaczego każda funkcja PHP związana z systemem plików jest zabroniona ?
Chyba, ci mają zastosowania Varien_Io_File
, Varien_File_Object
itd. Ale nawet podstawowe deweloperzy nie są świadomi wszystkich klas Varien i można często znaleźć takie rzeczy jak w Mage_ImportExport_Model_Import_Adapter_Csv
:
$this->_fileHandler = fopen($this->_source, 'r');
Tak więc rdzeń nie jest tak często najlepszym przykładem.
Inne wątpliwe zabronione funkcje IMHO:
mb_parse_str
parse_str
parse_url
base64_decode
- tak, jest używany w backdoorach, ale banowanie
eval
powinno wystarczyć i istnieją uzasadnione przypadki użycia, takie jak kodowanie danych binarnych. Poza tymjson_decode
(co nie jest zabronione) nie ma do tego dostępnego podstawowego pomocnika.
- tak, jest używany w backdoorach, ale banowanie
Zasadniczo moje pytanie sprowadza się do: Gdzie udokumentowano ten standard? I / lub czy istnieje lista „rzeczy do użycia zamiast tych rodzimych funkcji PHP”?
Zend_Db
zapytań nie powinien być w stanie generować zapytań SQL?
select
instrukcji, Zend_Db
używając surowego SQL jako danych wejściowych? Zakładałem, że to właśnie robi github.com/kalenjordan/custom-reports w backend.