⊗ppSpOtLO 74 of 83 menu

Tối ưu hóa các thao tác tuần hoàn trong PHP

Ngay cả một thao tác nhẹ, được lặp lại nhiều lần trong vòng lặp, cũng có thể tiêu tốn nhiều tài nguyên.

Chúng ta hãy xem xét một ví dụ. Giả sử chúng ta có một mảng nào đó:

<?php $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; ?>

Hãy tìm giá trị trung bình của các phần tử mảng này. Để làm điều đó, cần tìm tổng các phần tử và chia nó cho số lượng. Giả sử một lập trình viên nào đó đã giải quyết vấn đề này theo cách sau:

<?php $sum = 0; foreach ($arr as $elem) { $sum += $elem / count($arr); } echo $sum; ?>

Hãy xem xét các vấn đề của giải pháp như vậy. Về mặt kỹ thuật, mã hoạt động chính xác và cho kết quả đúng. Vấn đề là, về mặt toán học, cả việc chia toàn bộ tổng cho số lượng lẫn chia từng số hạng cho số lượng đều đúng.

Tuy nhiên, một vấn đề khác phát sinh. Vấn đề là chúng ta sẽ thực hiện phép chia số lần bằng với số phần tử trong mảng của chúng ta. Và hóa ra là chúng ta đang thực hiện một số lượng lớn các thao tác thừa, bởi vì phép chia lẽ ra có thể được thực hiện ở cuối - một lần, bằng cách chia toàn bộ tổng đã tìm được.

Hãy tối ưu hóa mã của chúng ta:

<?php $sum = 0; foreach ($arr as $elem) { $sum += $elem; } echo $sum / count($arr); ?>

Hãy tối ưu hóa đoạn mã dưới đây:

<?php for ($i = 1; $i <= 31; $i++) { if ($i === date('d')) { echo "<b>$i</b><br>"; } if ($i !== date('d')) { echo "$i<br>"; } } ?>
Tiếng Việt
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbek
Chúng tôi sử dụng cookie để vận hành trang web, phân tích và cá nhân hóa. Việc xử lý dữ liệu được thực hiện tuân theo Chính sách bảo mật.
chấp nhận tất cả tùy chỉnh từ chối