⊗ppSpOtRHO 73 of 83 menu

Optimasi Pengulangan Operasi Berat di PHP

Dalam pelajaran sebelumnya, pemanggilan fungsi berulang sebenarnya memakan waktu sangat sedikit dan optimasi kita tidak akan menghemat banyak. Namun, segala sesuatu akan menjadi jauh lebih buruk jika kita beberapa kali melakukan panggilan fungsi "berat" yang dieksekusi dalam waktu yang cukup lama.

Misalnya, kita memiliki fungsi yang menemukan pembagi angka:

<?php function getDivisors($num) { $result = []; for ($i = 1; $i <= $num; $i++) { if ($num % $i == 0) { $result[] = $i; } } return $result; } ?>

Jelas, fungsi ini cukup "berat". Oleh karena itu, ide yang buruk adalah menulis kode seperti ini:

<?php $num = 123456; if (array_sum(getDivisors($num)) >= 10 and array_sum(getDivisors($num)) <= 100) { } else { } ?>

Tentu saja, lebih baik melakukan operasi "berat" sekali saja dan mencatat hasilnya ke dalam variabel, lalu menggunakan variabel ini di tempat yang dibutuhkan:

<?php $num = 123456; $sum = array_sum(getDivisors($num)); if ($sum >= 10 and $sum <= 100) { } else { } ?>

Optimalkan kode di bawah ini:

<?php $num = 1233456789; if (getSumSquare($num) >= 10 and getSumSquare($num) <= 100) { echo 'benar'; } else { echo 'salah'; } function getSumSquare($num) { $digits = explode('', $num); $sum = 0; foreach ($digits as $digit) { $sum += $digit * $digit; } return $digit; } ?>
Indonesia
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan cookie untuk operasi situs, analitik, dan personalisasi. Pemrosesan data dilakukan sesuai dengan Kebijakan Privasi.
terima semua atur tolak