PHP හි සවික්රිය කාර්යයන් හරහා ප්රශස්තිකරණය
තම්බා ගන්න, නිශ්චිත ප්රොග්රෑමරයෙක් පරීක්ෂා කරන්නේ
අරාව තුළ 5 අංකය පවතීද යන්න:
<?php
$arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
$exists = false;
foreach ($arr as $elem) {
if ($elem == 5) {
$exists = true;
break; // අමතර චක්ර නොකැරකීම සඳහා අපි චක්රයෙන් පිටවෙමු
}
}
var_dump($exists);
?>
මම තර්ක කරමි, මෙම කේතය සමඟ යමක් වැරදියි. කුමක් නිවැරදි නැත, අපි අංක 3 සොයාගත් පසු චක්රයෙන් පිටවෙන්නේ නැද්ද? කාරණය නම්, PHP හි සවික්රිය කාර්යයන් සැමවිටම වැඩ කරයි ස්වයං-ලියන ලද සමාන කේතයට වඩා ඉහළ වේගයෙන්.
අපගේ අවස්ථාවේ, in_array කාර්යය පවතී,
එය ඉදිරිපත් කළ කාර්යය විසඳයි - සහ භාවිතා කළ යුත්තේ
හරියටම මෙම කාර්යය වේ:
<?php
$arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var_dump(in_array(3, $arr));
?>
අදහස: කාර්යයක් විසඳීමට පෙර අනිවාර්යයෙන්ම පරීක්ෂා කරන්න, එය විසඳීම සඳහා සවික්රිය PHP කාර්යයක් නොමැතිද යන්න.
පහත කේතයේ, නිශ්චිත ප්රොග්රෑමරයෙක් සොයා ගනී අරාවේ අංග එකතුව. මෙම ප්රොග්රෑමරයගේ විසඳුම ප්රශස්ත කරන්න.
කේතය මෙන්න:
<?php
$arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
$sum = 0;
foreach ($arr as $elem) {
$sum += $elem;
}
echo $sum;
?>
පහත කේතයේ, නිශ්චිත ප්රොග්රෑමරයෙක් සොයා ගනී අරාවේ අංග ගුණිතය. මෙම ප්රොග්රෑමරයගේ විසඳුම ප්රශස්ත කරන්න:
<?php
$arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
$res = 1;
foreach ($arr as $elem) {
$res *= $elem;
}
echo $res;
?>