====== Quy cách đặt tên file ====== * Tên file đặt bằng tiếng Anh. * Đặt tên file theo chức năng của file (ngoại trừ các file cố định) đó ví dụ file xử lý ảnh ta đặt image.php, file quản lý bình luận ta đặt comment.php. * Tên file chỉ nên đặt bằng chữ cái thường, chỉ bao gồm số, chữ cái và dấu _ (gạch dưới), tên file bắt đầu bằng chữ cái. ====== Đối với các file PHP ====== * Các file PHP phải có định dạng UNIX (UNIX format). * Khuyến nghị các file nên mã hóa dạng UTF-8 without BOM. ===== Mở đầu mỗi file ===== Sau Trong đó: * Sau Project là tên dự án. * Sau Author là thông tin về tên tác giả, email. * Sau Copyright là thông tin bản quyền. * Sau License là giấy phép của dự án * Sau creatdate là thông tin về thời gian. ==== Quy định riêng đối với file ngôn ngữ ==== Ta thêm thông tin ngôn ngữ Language bên dưới thông tin về bản quyền. ===== Chuẩn định dạng các file PHP ===== NukeViet áp dụng chuẩn định dạng code [[http://www.php-fig.org/psr/psr-2/|PSR-2]], mọi quy các áp dụng có thể xem tại đó. Xem bản dịch Tiếng Việt của tài liệu trên: https://github.com/nukeviet/fig-standards/blob/master/accepted/vi/PSR-2-coding-style-guide.md ===== Array ===== Do chuẩn PSR-2 không có quy định cụ thể về cách viết array, do đó NukeViet áp dụng riêng chuẩn như sau: Nếu mảng ngắn từ một đến hai phần tử ta viết $array = array('id' => $id, 'title' => $title); Nếu dài hơn ta phải viết $array = array( 'id' => $id, 'title' => $title ); Đối với mảng nhiều chiều ta viết $array = array( 'id' => array( 'id' => $_id, 'content' => array( 'sub' => $sub, 'cat' => $cat ), ), 'title' => $title ); ====== Đối với các file JS ====== Áp dụng chuẩn viết tương tự php ====== Đối với các file TPL ====== Nếu không có trường hợp đặc biệt nên dùng duy nhất một tên main để dánh dấu khối
{CONTENT.bodytext}
> Các thẻ có nội dung ngắn nên để một dòng {DATA.infomation} > Hạn chế tối đa viết trực tiếp CSS vào thẻ html. ====== Đối với file CSS ====== Định dạng theo kiểu nhiều hàng. .banner_plan { background: #FFF; border: 1px solid #DADADA; margin-bottom: 10px; padding: 5px } ====== Hướng dẫn định dạng php tự động ====== ===== Sử dụng Aptana Studio 3 ===== Để định dạng code NukeViet trên Aptana Studio 3 bạn download file {{:programming:fomat_aptana.zip|}} cho Aptana Studio 3.4 {{:programming4:fomat_aptana_3.6_nukeviet4.1.zip |}} cho Aptana Studio 3.6.1 sau đó giải nén được file fomat_php.xml Import file định dạng Vào menu Window -> Preferences -> Aptana-> Code Style -> Formatter, kích vào nút Imprort và chọn tới file fomat_php.xml vừa giải nén {{:programming:format_code_php_aptana.jpg?nolink |}} Cấu hình thêm để xóa các dòng trắng: {{:programming:remover-whitespace.png|}} Sau khi lưu cấu hình, bạn mở từng file cần định dạng và nhấn tổ hợp phím Ctrl + Shift + F ===== Eclipse Neon 3 ===== Cấu hình Format cho PHP {{ :programming4:eclipse_neon_3_nukeviet4_php.zip |}} Cấu hình Format cho JS {{ :programming4:eclipse_neon_3_nukeviet4_js.zip |}} Cấu hình xóa khoảng trống khi lưu file PHP {{ :programming4:eclipse_neon_3_tim.png |}} Cấu hình cho CSS {{ :programming4:eclipse_neon_3_css.png |}} Cấu hình cho html {{ :programming4:eclipse_neon_3_html.png |}} ===== Sử dụng phpDesigner 8 ===== Để định dạng code NukeViet trên phpDesigner 8 bạn cầu hình fomat file php như sau: {{ :programming:chuan_code_psr-2.png |Cấu hình định dạng code PSR-2 cho PhpDesigner 8}} Sau khi lưu cấu hình, bạn mở từng file cần định dạng và nhấn tổ hợp phím Shift + Ctrl + F1 > **Chú ý**: PhpDesigner không định dạng tương tích hoàn toàn với chuẩn PSR-2 nên sau khi định dạng code theo trên, bạn cần thực hiện thêm hai thao tác nữa để có thể hoàn toàn áp dụng đúng chuẩn. - Tại các file vừa định dạng, tìm kiếm cụm từ ''Catch ('' nếu có, đưa nó lên ngang hàng với ký tự ''}'' - Tìm kiếm ''array('' và ''array ('' nếu có kiểm tra lại và đưa ký tự đóng '')'' xuống hàng mới. Thiết lập cấu hình xóa khoảng trống khi lưu: Vào mục Tools => Preferences sau đó thiết lập như hình: {{ :programming4:trim-on-save.png |Xóa khoảng trắng khi lưu}}