Tiêu chuẩn mã hóa Magento ECG dường như (ít nhất là loại) chính thức là tiêu chuẩn cho các tiện ích mở rộng Magento 1:
https://github.com/magento-ecg/coding-st Chuẩn
Nhưng tôi không hiểu lý do đằng sau tất cả các quy tắc và quy tắc sniffer với các thông điệp của họ không giúp được gì nhiều. Có bất kỳ tài liệu chi tiết về tiêu chuẩn? Tôi biết các thực tiễn tốt nhất phổ biến và hướng dẫn của nhà phát triển nhưng không thể tìm thấy bất cứ điều gì cụ thể về các tiêu chuẩn mã hóa này.
Điều làm tôi lo lắng nhất là sự nghiêm ngặt về việc không sử dụng các hàm PHP.
Ví dụ: Tại sao mọi chức năng PHP liên quan đến hệ thống tệp bị cấm ?
Tôi đoán, bạn phải sử dụng Varien_Io_File
, Varien_File_Object
v.v. nhưng ngay cả các nhà phát triển cốt lõi cũng không biết về tất cả các lớp Varien và bạn thường tìm thấy những thứ như trong Mage_ImportExport_Model_Import_Adapter_Csv
:
$this->_fileHandler = fopen($this->_source, 'r');
Vì vậy, cốt lõi không phải là ví dụ tốt nhất, như thường lệ.
Các chức năng cấm nghi ngờ khác của IMHO:
mb_parse_str
parse_str
parse_url
base64_decode
- vâng, nó được sử dụng trong các cửa hậu nhưng việc cấm
eval
là đủ và có những trường hợp sử dụng hợp pháp, như mã hóa dữ liệu nhị phân. Và ngoàijson_decode
(không bị cấm), không có người trợ giúp cốt lõi nào sẵn sàng cho việc này.
- vâng, nó được sử dụng trong các cửa hậu nhưng việc cấm
Về cơ bản, câu hỏi của tôi tập trung vào: Tiêu chuẩn này được ghi nhận ở đâu? Và / hoặc có một danh sách "những thứ cần sử dụng thay cho các hàm PHP gốc" này không?
Zend_Db
xây dựng truy vấn có khả năng tạo bất kỳ truy vấn SQL nào không?
select
câu lệnh thông qua Zend_Db
việc sử dụng SQL thô làm đầu vào? Tôi giả sử đó là những gì github.com/kalenjordan/custom-reports thực hiện trong phần phụ trợ.