\n ở kết thúc dòng (hay còn gọi là Unix line endings), không dùng \r\n (Windows line endings).Những toán tử nằm giữa hai giá trị, ví dụ như +, -, =, !=, ==, >,... điều có một khoảng trắng ở đầu mỗi toán tử (trước và sau). Ví dụ: dùng $foo = $bar; sẽ tốt hơn là dùng $foo=$bar;. Đối với những toán tử có một giá trị, ví dụ như ++ thì không có khoảng trắng giữa toán tử và giá trị.
Cấu trúc điều khiển bao gồm: if, for, while, switch, vv.
<?php
if (condition1 || condition2) {
action1;
}
elseif (condition3 && condition4) {
action2;
}
else {
defaultaction;
}
?>
<?php
switch (condition) {
case 1:
action1;
break;
case 2:
action2;
break;
default:
defaultaction;
}
?>
Lời gọi hàm sẽ không có khoảng trắng giữa tên hàm và dấu ngoặc đơn và tham số đầu tiên. Mỗi tham số điều cách nhau bởi một khoảng trắng thông qua dấu phẩy (,) và không có khoảng trắng giữa tham số cuối cùng với dấu ngoặc đóng. Ví dụ:
<?php
$var = foo($bar, $baz, $quux);
?>
Đối với một khối các lời gọi hàm thì có dạng như sau để tăng tính dễ đọc:
<?php
$short = foo($bar);
$long_variable = foo($baz);
?>
Các đối số có giá trị mặc định được đặt ở cuối danh sách đối số. Cố gắng trả lại một giá trị có nghĩa từ một hàm, nếu có giá trị thích hợp. Ví dụ:
<?php
function funstuff_system($field) {
$system["description"] = t("This module inserts funny text into posts randomly.");
return $system[$field];
}
?>
Mảng được định dạng với một khoảng trắng đối với mỗi phần tử sau dấu phẩy (,) và một khoảng trắng giữa các dấu => . Xem ví dụ:
<?php
$some_array = array('hello', 'world', 'foo' => 'bar');
?>
Nếu một array nhiều hơn 80 ký tự thì tách ra thành nhiều dòng (thông thương khai báo menu thông qua hook_menu). Xem ví dụ:
<?php
$form['title'] = array(
'#type' => 'textfield',
'#title' => t('Title'),
'#size' => 60,
'#maxlength' => 128,
'#description' => t('The title of your node.'),
);
?>
Dùng dấu nháy đơn khi không có biến nào trong chuỗi, còn dùng dấu nháy đôi khi có biến xuất hiện trong chuỗi. Ví dụ:
<?php
echo "<h2>$header</h2>";
echo 'He\'s a good person.';
?>
Chú ý: Dấu nháy đơn sẽ chạy nhanh hơn dấu nháy đôi vì dấu nháy đơn khi chạy sẽ bỏ qua các biến có trong chuỗi đó.
Luôn sử dụng khoảng trắng giữa dấu . và các thành phần cần nối, ví dụ:
<?php
$string = 'Foo' . $bar;
$string = $bar . 'foo';
$string = bar() . 'foo';
$string = 'foo' . 'bar';
?>
Khi chỉ có một biến thì có thể dùng nháy đôi, ví dụ:
<?php
$string = "Foo $bar";
?>
Khi sử dụng dấu .= thì có một khoảng trắng giữa biến và các thành phần cần nối, ví dụ:
<?php
$string .= 'Foo';
$string .= $bar;
$string .= baz();
?>
Chuẩn ghi chú được tuân theo chuẩn Doxygen.
Nên ghi chú những gì lại những gì trước và sau khi làm việc nào đó (viết code, phân tích). Đối với một coder thì việc ko ghi chú cho công việc của mình thì được coi đó là hành đông can đảm, nhưng nó không bao giờ được khuyến khích. Một team làm việc thì việc ghi chú lại là cực kỳ cần thiết đối với các thành viên khác hiểu bạn làm gì, ví dụ:
<?php
// Unselect all other contact categories.
db_query('UPDATE {contact} SET selected = 0');
?>
include_once được khuyến cáo dùng khi bạn sử dụng thư viện bên ngoài nhưng sự tồn tại của nó không gây đến sự gián đoạn của chương trình (những tài nguyên gây gián đoạn chương trình có thể kể đến như các bộ lọc bảo mật, kết nối cơ sở dữ liệu, lời gọi dịch vụ web...).require_once thì ngược lại khi thư viện đó nó gây ảnh hưởng đến sự gián đoạn của chương trình. Vì khi dùng nó thì khi không load được tài nguyền nó sẽ báo lỗi fatal error làm ngừng ứng dụng.Ví dụ:
<?php
require_once 'filename.class.php';
include_once 'filename.class.php';
?>
Ví dụ khác:
<?php
include_once ./includes/mymodule_formatting.inc
?>
Trên D7 thì có thêm thư mục gốc:
<?php
require_once DRUPAL_ROOT . '/' . variable_get('cache_inc', 'includes/cache.inc');
?>
Chú ý: include_once() và require_once() chỉ là cách khai báo, không phải là hàm, tránh nhầm lẫn.
<?php ?> cho mã được viết trên ngôn ngữ PHP. Không nên dùng cách viết ngắn gọn như <? ?>.PHP là ngôn ngữ nhiều dòng mà mỗi dòng luôn luôn dùng dấu chấm phẩy ở cuối của khối dòng, hoặc dòng đơn. Ví dụ:
<?php print $tax; ?> -- YES
<?php print $tax ?> -- NO
Tất cả source code được khai báo trong phần comment của đầu file như sau, ví dụ đối với PHP:
<?php
// $Id$
Nó được thay thế bởi phần mềm revision (SVN) như sau:
<?php
// $Id: uc_feature.admin.inc 2167 2010-02-05 08:33:18Z si-nguyen.tien $
Ví dụ đối với file txt:
; $Id$
Được thay thế bằng:
; $Id: CHANGELOG.txt 2127 2010-02-01 12:06:11Z si-nguyen.tien $
Sử dụng example.com cho tất cả những liên kết ví dụ, dựa trên RFC 2606.
Functions (tên hàm)
Constants (hằng)
Global Variables (biến toàn cục)
Class (lớp)
<?php
abstract class DatabaseConnection extends PDO {
?>
<?php
public $lastStatement;
?>
<?php
_sort()
_initTree()
$this->_status
?>
<?php
protected $_somevar
protected function _initTree()
?>
Dùng _ để giảm thiểu số lượng tên chiếm dụng vì PHP không hỗ trợ method overloading.
File names (tên file)
Đây là những đoạn script được lưu trong thư mục scripts/ từ thư mục gốc, sử dụng đơn giản như sau:
./code-style.pl path/to/file/example.module
Đây là những module đóng góp từ cộng đồng giúp review code một cách nhanh chóng, tự động và module thực hiện việc đó là module coder và Coder Tough Love
Add your comment