01/10/2018, 17:00

10 điều không nên làm khi chuyển sang PHP 7

1. Đừng dùng các hàm mysql_ Thời đại này cuối cùng cũng đến khi bạn sẽ không chỉ được khuyên là dừng sử dụng các hàm mysql_ mà PHP 7 còn sẽ loại bỏ tất cả chúng ra khỏi core, nghĩa là bạn buộc phải dùng các hàm mysqli_ tốt hơn nhiều, hoặc la tích hợp PDO uyển chuyển hơn. 2. Đừng Viết ...

1. Đừng dùng các hàm  mysql_

Thời đại này cuối cùng cũng đến khi bạn sẽ không chỉ được khuyên là dừng sử dụng các hàm mysql_ mà PHP 7 còn sẽ loại bỏ tất cả chúng ra khỏi core, nghĩa là bạn buộc phải dùng các hàm mysqli_ tốt hơn nhiều, hoặc la tích hợp PDO uyển chuyển hơn.

2. Đừng Viết Code Thừa

Nghe có vẻ như không có não nhưng nó sẽ gia tăng độ nghiêm trọng bởi vì tốc độc nhanh của PHP 7 làm cho bạn khó nhìn nhận được các vấn đề ẩn sau đó.

Để hiểu tốc độ qaun trọng như thế nào và những gì bạn có thể làm để mọi thứ tốt hơn, hãy xem qua bài Beginners’ guide to speed optimization .

Là developer bạn nên luôn luôn đảm bảo rằng các script chỉ được load khi cần, chia nhỏ nó ra khi có thể, viết các câu lệnh truy vấn database hiệu quả, dùng cache khi cần và nhiều hơn nữa.

3. Đừng Dùng Tag Đóng Của PHP Ở Cuối File

Nếu nhìn kỹ bạn sẽ thấy hầu hết các file core của Wordpress bỏ sót việc đóng tag PHP ở cuối file. Sự thật là, Zend Framework đạc biệt nghiêm cấm nó. PHP không yêu cầu điều này và với việc không đóng tag ở cuối file bạn đang đảm bảo rằng không có khoảng trắng nào có thể thêm vào

4. Đùng Dùng Reference Nếu Không Cần Thiết

Cá nhân tôi không thích dùng reference. Thôi hiểu là nó có thể hữu ích trong một vài trường hợp, nhưng rất nhiều trường hợp khác nó làm cho code khó hiểu và theo dõi cũng như đặc biệt khó để dự đoán kết quả.

Rõ ràng mọi người nghĩ rằng nó sẽ làm cho code nhanh hơn, nhưng theo như bài này respectable PHP programmers thì không phải như vậy.

Một ví dụ tại sao các reference tồi tệ là 2 hàm sẵn có của PHP là shuffle() và sort(). Thay vì trả về kết quả là các array được trộn hoặc được sort thì nó lại modify luôn array bản nguyên thủy, hoàn toàn phá vỡ logic trong tâm trí tôi.

5. Đừng Truy Vấn Trong Vòng Lặp

Truy vấn database trong vòng lặp rất lãng phí. Nó đặt sự quá tải không cần thiết vào hệ thống, bạn có thể đạt được kết quả tương tự nhanh hơn bên ngoài vòng lặp. Khi tôi đối mặt với tình thế này tôi thường giải quyết với hai truy vấn để build một array của data rồi khi loop trong data đó, không cần phải query nhiều nữa.

Như cách mà WordPress làm việc sẽ thấy. Trong khi get_post_meta() sẽ bắt các giá trị meta từ database, bạn có thể sử dụng nó nếu loop qua metadata của post. Bởi vì khi bạn dùng nó lần đầu, WordPress sẽ lấy tất cả metadata đó và cache lại. Sau đó thì sử dụng cache thay vì gọi database.

Cách tốt nhất để làm việc với những thứ này là đọc các tài liệu về function và sử dụng các công cụ như Query Monitor.

6. Đừng Dùng * Trong Truy Vấn SQL

Đúng vậy. Trong mọi trường hợp, đừng sử dụng * trong các câu truy vấn SQL nếu bạn có thể tránh dùng nó, đặc biệt nếu bạn có một databaste với rất nhiều cột.

Chỉ định chính xác cột nào bạn cần và nhận nó. Việc này giúp tối giản sử dụng resource, bảo vệ data và làm cho mọi thứ rõ ràng nhất có thể.

Trong khi đang nói về SQL, nắm rõ các function và test tốc độ càng nhiều càng tốt. Khi tính toán trung bình, tổng hoặc các con số tương tự sử dụng các function SQL thay vì dùng function của PHP. Nếu bạn không chắc về tốc độ của test truy vấn thì hãy dùng các biến thể khác nhau và chọn cái tốt nhất.

7. Đừng Tin Vào Input Của User

Sẽ không thông minh khi tin vào input của user. Luôn luôn lọc, escape, kiểm tra...Có 3 vấn đề với user data: Developer không lường trước mọi tình huống và nó thường không đúng thậm chí cố tình độc hại.

Một cách nhìn nhận về system tốt sẽ bảo vệ tránh khỏi chúng. Đảm bảo rằng sử dụng các hàm có sẵn như filter_var() để kiểm tra các giá trị khi làm việc với database.

WordPress có một mớ các function giúp việc này. Xem qua Validating, escaping and sanitising user data để nắm nhiều thông tin hơn.

8. Đừng Cố Gắng Thông Minh

Mục tiêu của bạn là viết các code thanh lịch để thể hiện ý định một cách rõ ràng nhất. Bạn có thể sẽ tạo thêm khoảng 0,01 giây cho mỗi lần tải trang vì đã rút ngắn tất cả mọi thứ thành một biến ký tự bằng cách sử dụng logic bậc ba và cách thông minh khác, nhưng điều này thực sự không là gì so với những nhức đầu bạn sẽ gây ra cho bản thân và mọi người xung quanh bạn.

Đặt tên biến thích hợp, ghi tài liệu về code của bạn, sử dụng các code hướng đối tượng đã được chuẩn hóa mà không cần thêm quá nhiều comment bên trong nữa.

9. Đừng Phát Minh Lại Cái Bánh Xe

Những gì bạn định làm thì đã có người khác làm trước đó nên đừng ngại hỏi sự trợ giúp của những người khác trên Github , Composer , Packagist .

Từ lưu trữ log cho đến  các công cụ đo màu sắc, từ profilers đến unit testing frameworks, từ Mailchimp APIs đến Twitter Bootstrap, mọi thứ để có sẵn, hãy sử dụng chúng!

10. Đừng Bỏ Qua Các Ngôn Ngữ Khác

Nếu bạn là một người làm PHP chắc cũng sẽ rành HTML, CSS, Javascript và MySQL. Khi bạn làm chủ các ngôn ngữ này cũng là lúc bạn học Javascript lại một lần nữa. Nó không phải là jQuery, bạn cần học Javascript thật vũng chắc để có thể sắp xếp mọi thứ thật hiệu quả.

Tôi cũng khuyến nghị bạn hoạc về OOP của PHP, nó sẽ là cứu cánh và làm cho code của bạn tốt hơn. Nó cũng mở cánh cửa đến các ngôn ngữ khác như C# và Java.

Mở rộng kiến thức bằng cách vọc package manager, xây dựng các script, Coffeescript, LESS, SASS, YAML, templating engines và các tool tuyệt vời khác. Tôi cũng muốn khuyến nghị bạn xem qua các framework khác như Laravel chẳng hạn.

Nguồn: Via Techtalk

0