⊗ppSpOtEI 76 of 83 menu

PHP-তে অপ্রয়োজনীয় লুপ পাস অপ্টিমাইজেশন

নিচের কোডে একজন প্রোগ্রামার চেক করছে, অ্যারেতে 3 সংখ্যাটি আছে কিনা:

<?php $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; $exists = false; foreach ($arr as $elem) { if ($elem == 3) { $exists = true; } } var_dump($exists); ?>

তার সমাধানে কি সমস্যা? মনে হয় না লুপে কোনো অপ্রয়োজনীয় অপারেশন করা হচ্ছে। সমস্যা হলো, এটি নির্ধারণ করার পরেও যে 3 সংখ্যাটি অ্যারেতে আছে - লুপ তারপরও অ্যারের শেষ পর্যন্ত ঘুরতে থাকে।

সবচেয়ে বেশি অকার্যকর হবে, যদি 3 সংখ্যাটি অ্যারের শুরুতে somewhere পাওয়া যায়, এবং অ্যারেটি নিজেই 1000 elements দীর্ঘ হয়। এর ফলে এক হাজার useless অতিরিক্ত পুনরাবৃত্তি হবে লুপের! সর্বোত্তম নয়।

সঠিক সময়ে লুপ থামিয়ে কোডটি অপ্টিমাইজ করা যাক:

<?php $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; $exists = false; foreach ($arr as $elem) { if ($elem == 3) { $exists = true; break; } } var_dump($exists); ?>

নিচের কোডটি গণনা করে, অ্যারের কতগুলি উপাদান যোগ করতে হবে, যাতে যোগফল 10-এর বেশি হয়। অপ্টিমাইজেশন করুন:

<?php $arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; $sum = 0; $i = 1; foreach ($arr as $elem) { $sum += $elem; if ($sum <= 10) { $i++; } } echo $i; ?>

নিচের কোডটি প্রদত্ত সীমা থেকে জোড় সংখ্যা প্রিন্ট করে। অপ্টিমাইজেশন করুন:

<?php for ($i = 0; $i <= 100; $i++) { if ($i % 2 === 0) { echo $i; } } ?>

নিচের কোডটি সেই সংখ্যাগুলি প্রিন্ট করে, যেগুলি একই সাথে 2 এবং 3 দ্বারা বিভাজ্য। অপ্টিমাইজেশন করুন:

<?php for ($i = 0; $i <= 100; $i++) { if ($i % 2 === 0 and $i % 3 === 0) { echo $i; } } ?>
বাংলা
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ʻzbekTiếng Việt
আমরা সাইট পরিচালনা, বিশ্লেষণ এবং ব্যক্তিগতকরণের জন্য কুকি ব্যবহার করি। ডেটা প্রক্রিয়াকরণ গোপনীয়তা নীতি অনুযায়ী করা হয়।
সব গ্রহণ করুন কনফিগার করুন প্রত্যাখ্যান করুন