Bất kỳ ngôn ngữ lập trình nào khi được viết sạch sẽ, dễ hiểu và được định dạng tốt đều dễ dàng được chấp nhận và hoan nghênh bởi tất cả mọi người.
Và điều cần thiết là phải giúp các lập trình viên khác (không nhất thiết phải làm việc cùng ngôn ngữ) hiểu được tất cả các dòng code chúng ta viết.
Để dễ dàng xác định và đảm bảo tính dễ hiểu cho bất kỳ lập trình viên nào tiếp nhận nó sau này.
11 Mẹo viết code PHP
Trong bài này mình sẽ cho bạn thấy một số Mẹo viết code PHP Sạch và An toàn.
Không có thứ tự quan trọng ở đây, vì thế tất cả các mẹo này đều cần thiết và có tầm quan trọng như nhau:
Mẹo #1: Comment về mọi hành động quan trọng là cực kỳ cần thiết
Điều này không chỉ giúp dễ dàng xác định nhu cầu cụ thể của đoạn code đó mà còn làm cho chương trình gọn gàng, nhìn thấy phân tách rõ ràng.
// Hàm kiểm tra đăng nhập
if(!$user_login){
header("Location:https://niithanoi.edu.vn/");
die();
}
Mẹo #2: Tránh sử dụng các cầu điều kiện không mong muốn
Điều này không chỉ làm tăng thời gian thực thi mà còn làm cho code dài và phức tạp.
Ví dụ:
<?php
if (condition1 == true){
// Code thỏa mãn điều kiện trên
} else {
// Thực thi die(); hoặc exit();
}
?>
Thay vì dài dòng như thế, chúng ta có thể viết chương trình PHP trên như sau:
<?php
if(!condition){
// Hiển thị thông tin cảnh báo
die("Câu lệnh không hợp lệ!");
}
?>
Điều này làm giảm thời gian thực thi và cũng làm cho code dễ dàng duy trì hơn.
Cách làm dưới đây cũng là một giải pháp:
<?php
$response_text = ( Điều kiện ) ? "Hành động khi đúng" : "Hành động khi sai";
echo $response_text;
?>
Ở đây, các toán tử ternary đã được sử dụng, thay vì sử dụng các câu lệnh có điều kiện, để đơn giản hóa code hơn nữa.
Mẹo #3: Code thụt lề để đánh dấu bắt đầu và kết thúc câu lệnh
Code đẹp luôn luôn tốt. Thụt lề để giúp bạn dễ nhận ra các block code từ đó biết được phạm vi của các đoạn mã, phạm vi của biến...
<?php
if(mysql_num_rows($res)>0) {
while($a = mysql_fetch_object($res)){
echo $a->first_name;
} // Kết thúc vòng lặp While
}// Kết thúc điều kiện if
?>
Mẹo #4: Tránh sử dụng các thẻ HTML không mong muốn trong code PHP
Trong ví dụ được đưa ra dưới đây, trình biên dịch PHP đi qua từng dòng mã và thực thi hàm, việc này rất tốn thời gian.
<?php
echo "<table>";
echo “<tr>”;
echo “<td>”;
echo “11 Mẹo code PHP”;
echo “</td>”;
echo </tr>”;
echo “</table>”;
?>
Thay vào đó, chúng ta sử dụng cách đơn giản dưới đây:
<html>
<body>
<table>
<tr>
<td>
<?php
echo "11 Mẹo code PHP";
?>
</td>
</tr>
</table>
</body>
</html>
Ở đây, trình biên dịch PHP sẽ chỉ thực thi code PHP phía server thay vì tạo ra các thẻ HTML.
Điều này giúp cắt giảm thời gian kiểm tra không cần thiết của trình biên dịch PHP, do đó tiết kiệm thời gian thực thi chương trình.
Mẹo #5: Clear code bằng cách gán giá trị cho tham số MySQL
Ví dụ:
$sql = "SELECT first_name, last_name, email_address FROM tbl_user WHERE user_id=".$user_id." AND member_type='".$member_type."'";
mysql_query($sql);
Thay vào đó, chúng ta sẽ làm như thế này:
$sql = "SELECT first_name,last_name,email_address FROM tbl_user WHERE user_id="%d" AND member_type='"%s"'";
mysql_query(sprintf($sql,$user_id,$member_type));
Bằng cách sử dụng truy vấn trên, các giá trị tự động được gán vào vị trí thích hợp.
Do đó tiết kiệm thời gian thực thi và cũng như giúp các lập trình viên có thể dễ dàng tìm thấy các giá trị liên quan đến các đối số được truyền vào.
Mẹo #6: Sử dụng mảng để dễ quản lý dữ liệu
Sử dụng các mảng trong PHP luôn luôn tốt hơn vì chúng cũng khá dễ quản lý và cũng dễ hiểu.
<?php
$products = array("Dove","Apple","Nokia");
?>
Sử dụng Split array cũng là một cách làm rất tốt trong PHP. Tuy nhiên, có nhiều cách để tách mảng, thay vì như thế này:
<?
for($i = 0; $i < count($products); $i++){
echo $products[$i].”<br>”;
}
?>
Chúng ta sẽ làm thế này:
<?
foreach($products as $product_value){
echo $product_value;
}
?>
Vòng lặp foreach được đặc biệt thiết kế cho mảng.
Vì thế, khi sử dụng foreach, chúng làm giảm thời gian viết code và cả thời gian làm việc.
Mẹo #7: Đặt tên NHẤT QUÁN
Luôn luôn nên đặt tên class, object và những thứ khác một cách nhất quán.
Điều này giúp các lập trình viên khác dễ dàng nhận dạng, kể cả những người vào dự án sau này có thể dễ dàng lần theo.
Ngoài ra tên của các tập tin trong thư mục local cũng phải dễ hiểu.
Mẹo #8: Sử dụng đối tượng
Mặc dù đối tượng có vẻ khá phức tạp đối với người mới bắt đầu học lập trình PHP, nhưng các đối tượng rất hữu ích vì nó làm hạn chế lặp lại code và cũng tạo điều kiện để thay đổi chương trình dễ dàng hơn.
Khi đó lập trình sẽ linh hoạt hơn nhiều.
Dưới đây là ví dụ về một class đơn giản:
<?
// Tạo class giỏ hàng
Class shopping_cart{
var $cart_items;
function add_product_item($cart_number,$quantity){
$this->items[$cart_number] += $quantity;
}
}
// Tạo đối tượng
$cart = new shopping_cart();
// Thêm sản phẩm vào giỏ hàng
$cart->add_product_item("123",10);
?>
Mẹo #9: Sử dụng vòng lặp phù hợp
Có rất nhiều loại vòng lặp có sẵn trong PHP như: Vòng lặp for, vòng lặp while, vòng lặp do.. while, vòng lặp foreach.
Nhưng không phải người ta tạo ra nhiều vòng lặp để chơi. Mà để sử dụng đúng vòng lặp tại đúng thời điểm. Điều này RẤT QUAN TRỌNG.
Sử dụng đúng vòng lặp tài thời điểm thích hợp có thể rút ngắn thời gian thực thi, kết thúc công việc sớm hơn.
Ví dụ, thay vì làm thế này:
$res = mysql_query("select * from tbl_products");
for($i = 0; $i < mysql_num_rows($res); $i++){
echo mysql_result($res, $i);
}
Chúng ta có thể thực hiện như sau để làm giảm thời gian thực thi:
$res = mysql_query("select * from tbl_products");
while($obj = mysql_fetch_object($res)){
echo $obj->column_name1;
}
Nếu bạn muốn có thể nhận biết và sử dụng đúng vòng lặp, đúng thời điểm thì có thể tham gia Khóa học PHP Fullstack :)
Mẹo #10: Sử dụng cấu trúc Switch case trong PHP
Chắc chắn là sử dụng cấu trúc Switch case sẽ thuận lợi hơn sử dụng if... trong trường hợp cần kiểm tra nhiều điều kiện.
Ví dụ về việc sử dụng một loạt các câu lệnh if:
if($checking_value1 == $value){
echo "result1";
}elseif($checking_value2 == $value){
echo "result2";
}elseif($checking_value3 == $value){
echo "result3";
}else{
echo "result 4";
}
Điều tương tự có thể được thể hiện theo cách đơn giản hơn bằng cách sử dụng Cấu trúc Switch case, nó giúp giảm đáng kể thời gian thực thi đấy:
switch($checking_value){
case Value1:
echo "result1";
break;
case Value2:
echo "result2";
break;
case Value3:
echo "result3";
break;
default:
echo "result4";
break;
}
Mẹo #11: Sử dụng Nháy đơn thay vì Nháy kép
Mặc dù Nháy đơn và Nháy kép được tạo ra để sử dụng cho các mục đích khác nhau.
Nhưng sử dụng dấu nháy đơn giúp thực thi các vòng lặp nhanh hơn so với khi sử dụng dấu nháy kép.
Ví dụ, một ví dụ đơn giản về in 1500 dòng thông tin, có thể được thực hiện theo hai cách như:
// Sử dụng dấu nháy kép
print “SerialNo : $serialno. WorkDone : $workdone. Location: $location”;
Điều tương tự có thể được viết với dấu nháy đơn:
// Sử dụng dấu nháy đơn
print ‘SerialNo :’.$serialno.’. WorkDone : ‘.$workdone’. Location‘.$location’.';
Ở đây, đoạn code sử dụng dấu nháy đơn hoạt động nhanh hơn nhiều so với đoạn code sử dụng dấu nháy kép.
Trong đoạn code sử dụng dấu nháy kép: Các chuỗi phải được phân tích toàn bộ, tất cả 1500 lần.
Trong khi đó, ở đoạn code sử dụng dấu nháy đơn: Không có phân tích chuỗi thực tế diễn ra. Chỉ cần kết hợp các chuỗi để in thông tin.
Chúc mừng bạn đã biết thêm về Mẹo viết code PHP Sạch và An toàn
Một số Mẹo viết code PHP trên đây nghe có vẻ khá quen thuộc, nhưng chúng đã được đưa vào đây để giúp bạn tổng hợp lại đầy đủ những thứ tốt nhất.
Cám ơn bạn đã theo dõi. Chúc bạn học PHP tốt!
---
HỌC VIỆN ĐÀO TẠO CNTT NIIT - ICT HÀ NỘI
Dạy học Lập trình chất lượng cao (Since 2002). Học làm Lập trình viên. Hành động ngay!
Đc: Tầng 3, 25T2, N05, Nguyễn Thị Thập, Cầu Giấy, Hà Nội
SĐT: 02435574074 - 0914939543 - 0353655150
Email: hello@niithanoi.edu.vn
Fanpage: https://facebook.com/NIIT.ICT/
#niit #niithanoi #niiticthanoi #hoclaptrinh #khoahoclaptrinh #hoclaptrinhjava #hoclaptrinhphp #python #java #php