⊗ppPmRgRCb 260 of 447 menu

PHP හි නිත්‍ය ප්‍රකාශන මගින් කොල්බැක් සමඟ ප්‍රතිස්ථාපනය කිරීම

අපට පහත සූත්‍රය ඇතැයි සිතමු:

<?php $str = '2+3= 3+5= 7+8='; ?>

අපට අංකය+අංකය= ආකාරයේ ඉදිකිරීම් සියල්ල සොයා ගැනීමට සහ සමාන ලකුණෙන් පසු එකතු කිරීමේ ප්‍රතිඵලය දිස්වන පරිදි කිරීමට අවශ්‍ය යැයි සිතමු.

මෙවැනි කාර්යයක් විසඳීම සඳහා preg_replace_callback ශ්‍රිතය භාවිතා කිරීම පහසු වේ, එය preg_replace ශ්‍රිතයට සමානව ක්‍රියා කරයි - නිත්‍ය ප්‍රකාශනයකට අනුව සොයාගෙන ප්‍රතිස්ථාපනය කරයි, නමුත් සොයාගත් කොටස් සමඟ අතිරේක අළලීම් සිදු කිරීමට ඉඩ සලසයි.

පළමු පරාමිතිය ලෙස ශ්‍රිතය නිත්‍ය ප්‍රකාශනයක් ලබා ගනී, දෙවන පරාමිතිය - අපි එය මාරු කරන දේ, තෙවන පරාමිතිය - ප්‍රතිස්ථාපනය සිදුවන නූල.

මෙම අවස්ථාවේදී, දෙවන පරාමිතියට කොල්බැක් ශ්‍රිතයක් යැවිය යුතුය, එය සොයාගත් සෑම ගැලපීමක් සඳහාම කැඳවනු ලැබේ.

කොල්බැක් හි පළමු පරාමිතිය ලෙස සොයාගත් දේ වෙත යොමු වන විචල්‍යය නියම කළ යුතුය. මෙම විචල්‍යය සොයාගත් දේගේ සම්මුඛ බෑග් අරාවක් නියෝජනය කරයි.

ප්‍රායෝගිකව උත්සාහ කරමු. අපගේ උපස්තර අල්ලා ගන්නා කේතයක් ලියමු, පළමු අංකය පළමු සම්මුඛ බෑගයට ද, දෙවන අංකය දෙවන සම්මුඛ බෑගයට ද තබමු:

<?php $str = '2+3= 3+5= 7+8='; preg_replace_callback('#(\d+)\+(\d+)=#', function($match) { var_dump($match); }, $str); ?>

ප්‍රතිඵලයක් වශයෙන්, අපගේ var_dump ක්‍රියාත්මක වනු ඇත වරකට වරක්, පහත දේ පිළිවෙලින් ප්‍රතිදානය කරයි:

['2+3=', '2', '3'] ['3+5=', '3', '5'] ['7+8=', '7', '7']

අපි ඉදිරියට යමු. සෑම ගැලපීමක්ම return හරහා කොල්බැක් විසින් ආපසු ලබා දෙන දේ සමඟ ප්‍රතිස්ථාපනය කරනු ලැබේ. උදාහරණයක් ලෙස, සොයන ලද එක් එක් උපස්තරය '!' ලකුණ සමඟ ප්‍රතිස්ථාපනය කරමු:

<?php $str = '2+3= 3+5= 7+8='; $res = preg_replace_callback('#(\d+)\+(\d+)=#', function($match) { return '!'; }, $str); echo $res; // '! ! !' ප්‍රතිදානය කරයි ?>

දැන් එක් එක් උපස්තරය එහි අංක යුගලයේ එකතුව සමඟ ප්‍රතිස්ථාපනය කරමු:

<?php $str = '2+3= 3+5= 7+8='; $res = preg_replace_callback('#(\d+)\+(\d+)=#', function($match) { return $match[1] + $match[2]; }, $str); echo $res; // '5 8 13' ප්‍රතිදානය කරයි ?>

එබැවින් අපගේ කාර්යය බොහෝ දුරට විසඳී ඇත. ඉතිරිව ඇත්තේ අංකවල එකතුවට පෙර අපේක්ෂිත උපස්තරය ඉතිරි වන පරිදි කිරීමයි. මෙය සිදු කිරීම සඳහා, අපි ශුන්‍ය සම්මුඛ බෑගයේ අන්තර්ගතය එකතුවට පෙර ඇතුළු කරන්නෙමු:

<?php $str = '2+3= 3+5= 7+8='; $res = preg_replace_callback('#(\d+)\+(\d+)=#', function($match) { return $match[0] . ($match[1] + $match[2]); }, $str); echo $res; // '2+3=5 3+5=8 7+8=13' ප්‍රතිදානය කරයි ?>

නූලක් ලබා දී ඇත:

<?php $str = 'The numbers are 3, 7 and 12'; ?>

නූලේ ඇති සියලුම සංඛ්‍යා ඒවායේ වර්ග වලින් ප්‍රතිස්ථාපනය කරන්න.

අපේක්ෂිත ප්‍රතිඵලය:

'The numbers are 9, 49 and 144'

නූලක් ලබා දී ඇත:

<?php $str = '2023-01-15 2022-12-31 2024-05-20'; ?>

සියලුම දිනයන් දින.මාස.වර්ෂ ආකෘතියට පරිවර්තනය කරන්න.

නූලක් ලබා දී ඇත:

<?php $str = 'Costs: $15, $20, $100'; ?>

සියලුම මිල ගණන් 10% කින් වැඩි කරන්න.

සිංහල
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
අපි වෙබ් අඩවිය ක්‍රියාත්මක කිරීම, විශ්ලේෂණය සහ පුද්ගලීකරණය සඳහා කුකී භාවිතා කරමු. දත්ත සැකසීම සිදුකරනු ලබන්නේ ගෝපනීයතා ප්‍රතිපත්තිය අනුව ය.
සියල්ල පිළිගන්න කොන්දේසි ප්‍රතික්ෂේප කරන්න