Nếu chúng ta thực hiện phép tăng hoặc giảm ( ++, +=, --, -= ) cho 1 biến chưa khai báo trước thì nó chậm gấp 9, 10 lần so với việc ta khai báo nó xong mới thực hiện toán tử.
2 - Hạn chế tối đa việc gọi hàm trong vòng lặp.
Hàm sẽ được thực thi xuyên suốt vòng lặp. Đặc biệt không dùng for($i = 0; $i < count($arr); $i++)
3 - Không dùng mis-constant
$arr = array('test' => 1);
$arr[test] = 2; // Very slow
$arr['test'] = 2; // Nhanh gấp 7 lần so với cách trên
4 - Không ngăn chặn lỗi bằng @.
Cực kỳ chậm và tốn tài nguyên
5 - Không gọi các hàm magic call (__get, __set, __autoload)
Cực kỳ chậm
6 - Tránh không xài include_one, require_one.
Rất chậm và tốn nhiều tài nguyên nên dùng include, require. Tuyệt đối không dùng include_path
7 - Sử dụng toán tử so sánh === NULL nhanh hơn so với dùng is_null()
Theo kết quả benchmark thì việc dùng hàm is_null() sẽ chậm hơn dùng toán tử so sánh === NULL tới gấp 5 lần. Thực hiện thí nghiệm dựa trên thông số máy tính như sau: CPU intel core-i3, RAM 2GB, OS: window, WAMP: PHP 5.3.9
Iterations: 100000 (10 Runs) # | NULL | rel % | is_null() | rel % ----+----------+--------+-----------+-------- 1 | 0.02470 | 19.5 % | 0.12686 | 513.5% 2 | 0.02276 | 17.9 % | 0.12696 | 557.9% 3 | 0.02409 | 18.0 % | 0.13379 | 555.3% 4 | 0.02239 | 17.9 % | 0.12509 | 558.6% 5 | 0.02381 | 19.0 % | 0.12526 | 526.0% 6 | 0.02351 | 18.2 % | 0.12904 | 548.9% 7 | 0.02265 | 18.3 % | 0.12349 | 545.1% 8 | 0.02233 | 18.6 % | 0.12019 | 538.2% 9 | 0.02252 | 18.5 % | 0.12152 | 539.6% 10 | 0.02293 | 18.8 % | 0.12191 | 531.7%
No comments:
Post a Comment