count_chars သည် ဇာတ်ကောင်တစ် ဦး ချင်းစီ၏ကြိမ်နှုန်းကိုကြိုးတစ်ချောင်းဖြင့်တွက်ချက်ပြီး Associative Arrai ကိုပြန်လည်ရရှိစေသည့် built-in function တစ်ခုဖြစ်သည်။ ဤခင်းကျင်းမှု၏သော့များသည် ascii ကုဒ်နံပါတ်ဖြစ်သည်။ တန်ဖိုးသည် string တွင်ဇာတ်ကောင်များပေါ်လာသည့်အကြိမ်အရေအတွက်ဖြစ်သည်။
<span><span><span class="hljs-variable">$string</span></span><span> = </span><span><span class="hljs-string">"hello world!"</span></span><span>;
</span><span><span class="hljs-variable">$char_count</span></span><span> = </span><span><span class="hljs-title function_ invoke__">count_chars</span></span><span>(</span><span><span class="hljs-variable">$string</span></span><span>, </span><span><span class="hljs-number">1</span></span><span>); </span><span><span class="hljs-comment">// 1 ပြန်လာကြိမ်နှုန်းကိုယ်စားပြု parameters တွေကို၏ခင်းကျင်း</span></span><span>
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$char_count</span></span><span>);
</span></span>output ရလဒ် -
<span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
(
[</span><span><span class="hljs-number">104</span></span><span>] => </span><span><span class="hljs-number">1</span></span><span>
[</span><span><span class="hljs-number">101</span></span><span>] => </span><span><span class="hljs-number">1</span></span><span>
[</span><span><span class="hljs-number">108</span></span><span>] => </span><span><span class="hljs-number">2</span></span><span>
[</span><span><span class="hljs-number">111</span></span><span>] => </span><span><span class="hljs-number">2</span></span><span>
[</span><span><span class="hljs-number">119</span></span><span>] => </span><span><span class="hljs-number">1</span></span><span>
[</span><span><span class="hljs-number">114</span></span><span>] => </span><span><span class="hljs-number">1</span></span><span>
[</span><span><span class="hljs-number">100</span></span><span>] => </span><span><span class="hljs-number">1</span></span><span>
[</span><span><span class="hljs-number">33</span></span><span>] => </span><span><span class="hljs-number">1</span></span><span>
)
</span></span>အထက်ပါဥပမာတွင် count_chars သည် ဇာတ်ကောင်တစ် ဦး ချင်းစီ၏ကြိမ်နှုန်းကို string တစ်ခု (ASCII Code) တွင်အကြိမ်ရေကိုပြန်ပို့သည်။ ဥပမာအားဖြင့်, H (ASCII Code 104) ဇာတ်ကောင်များ (ASCII Code 104) သည်တစ်ကြိမ်ပေါ်လာမည်ဖြစ်ပြီး L ဇာတ်ကောင် L (ASCII Code 108) သည်နှစ်ကြိမ်ပေါ်လာသည်။
များသောအားဖြင့်ကျွန်ုပ်တို့သည် ASCII ကုဒ်အစားဇာတ်ကောင်၏အမှန်တကယ်တန်ဖိုးကိုကြည့်လိုသည်။ ထိုသို့ပြုလုပ်ရန်ကျွန်ုပ်တို့သည် Returned Array ကို array_map function ကိုပေါင်းစပ်ပြီး ASCII Code ကိုစာလုံးအဖြစ်ပြောင်းလဲနိုင်သည်။
Array_map function သည် callback function ကိုလက်ခံပြီး Array ၏ element တစ်ခုစီကိုသက်ဆိုင်သည်။ ကျွန်ုပ်တို့၏မြင်ကွင်းတွင် ASCII ကုဒ်ကိုသက်ဆိုင်ရာဇာတ်ကောင်များအဖြစ်ပြောင်းလဲရန်၎င်းကိုအသုံးပြုနိုင်သည်။
<span><span><span class="hljs-variable">$string</span></span><span> = </span><span><span class="hljs-string">"hello world!"</span></span><span>;
</span><span><span class="hljs-variable">$char_count</span></span><span> = </span><span><span class="hljs-title function_ invoke__">count_chars</span></span><span>(</span><span><span class="hljs-variable">$string</span></span><span>, </span><span><span class="hljs-number">1</span></span><span>);
</span><span><span class="hljs-comment">// သေတမ်းစာ ASCII Code ကိုစာလုံးအဖြစ်ပြောင်းပါ</span></span><span>
</span><span><span class="hljs-variable">$char_count</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_map</span></span><span>(function(</span><span><span class="hljs-variable">$key</span></span><span>) {
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-title function_ invoke__">chr</span></span><span>(</span><span><span class="hljs-variable">$key</span></span><span>); </span><span><span class="hljs-comment">// chr() 函数သေတမ်းစာ ASCII code ကိုဇာတ်ကောင်မှပြောင်းပါ</span></span><span>
}, </span><span><span class="hljs-title function_ invoke__">array_keys</span></span><span>(</span><span><span class="hljs-variable">$char_count</span></span><span>));
</span><span><span class="hljs-comment">// သေတမ်းစာ频率与字符关联</span></span><span>
</span><span><span class="hljs-variable">$char_count</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_combine</span></span><span>(</span><span><span class="hljs-variable">$char_count</span></span><span>, </span><span><span class="hljs-title function_ invoke__">array_values</span></span><span>(</span><span><span class="hljs-variable">$char_count</span></span><span>));
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$char_count</span></span><span>);
</span></span>output ရလဒ် -
<span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
(
[h] => </span><span><span class="hljs-number">1</span></span><span>
[e] => </span><span><span class="hljs-number">1</span></span><span>
[l] => </span><span><span class="hljs-number">2</span></span><span>
[o] => </span><span><span class="hljs-number">2</span></span><span>
[w] => </span><span><span class="hljs-number">1</span></span><span>
[r] => </span><span><span class="hljs-number">1</span></span><span>
[d] => </span><span><span class="hljs-number">1</span></span><span>
[!] => </span><span><span class="hljs-number">1</span></span><span>
)
</span></span>ယခုအချိန်တွင်ကျွန်ုပ်တို့သည်ဇာတ်ကောင်များနှင့်သူတို့၏ကြိမ်နှုန်းကိုတွေ့နိုင်ပြီး output တွင်ဇာတ်ကောင်တစ် ဦး ချင်းစီ၏ကြိမ်နှုန်းကိုလည်းရှင်းလင်းစွာမြင်နိုင်သည်။
အထက်ပါအဆင့်နှစ်ခုမှတစ်ဆင့်ကျွန်ုပ်တို့သည်ဇာတ်ကောင်အကြိမ်ရေကိုလျင်မြန်စွာတွက်ချက်ပြီး၎င်းကိုလူသားဖတ်နိုင်သောပုံစံအဖြစ်ပြောင်းလဲနိုင်သည်။ ဤအဆင့်နှစ်ခုသည်ထပ်ခါတလဲလဲစစ်ဆင်ရေးများကိုရိုးရှင်းစေရန်လုပ်ဆောင်ချက်တစ်ခုသို့ encapsulated လုပ်နိုင်သည်။
<span><span><span class="hljs-function"><span class="hljs-keyword">function</span></span></span><span> </span><span><span class="hljs-title">getCharFrequency</span></span><span>(</span><span><span class="hljs-params"><span class="hljs-variable">$string</span></span></span><span>) {
</span><span><span class="hljs-variable">$char_count</span></span><span> = </span><span><span class="hljs-title function_ invoke__">count_chars</span></span><span>(</span><span><span class="hljs-variable">$string</span></span><span>, </span><span><span class="hljs-number">1</span></span><span>);
</span><span><span class="hljs-variable">$char_count</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_map</span></span><span>(function(</span><span><span class="hljs-variable">$key</span></span><span>) {
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-title function_ invoke__">chr</span></span><span>(</span><span><span class="hljs-variable">$key</span></span><span>);
}, </span><span><span class="hljs-title function_ invoke__">array_keys</span></span><span>(</span><span><span class="hljs-variable">$char_count</span></span><span>));
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-title function_ invoke__">array_combine</span></span><span>(</span><span><span class="hljs-variable">$char_count</span></span><span>, </span><span><span class="hljs-title function_ invoke__">array_values</span></span><span>(</span><span><span class="hljs-variable">$char_count</span></span><span>));
}
</span><span><span class="hljs-variable">$string</span></span><span> = </span><span><span class="hljs-string">"hello world!"</span></span><span>;
</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">getCharFrequency</span></span><span>(</span><span><span class="hljs-variable">$string</span></span><span>);
</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$result</span></span><span>);
</span></span>output ရလဒ် -
<span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
(
[h] => </span><span><span class="hljs-number">1</span></span><span>
[e] => </span><span><span class="hljs-number">1</span></span><span>
[l] => </span><span><span class="hljs-number">2</span></span><span>
[o] => </span><span><span class="hljs-number">2</span></span><span>
[w] => </span><span><span class="hljs-number">1</span></span><span>
[r] => </span><span><span class="hljs-number">1</span></span><span>
[d] => </span><span><span class="hljs-number">1</span></span><span>
[!] => </span><span><span class="hljs-number">1</span></span><span>
)
</span></span>GetCharfraencquency function ကိုမှတစ်ဆင့် string ၏ဇာတ်ကောင်ကြိမ်နှုန်းစာရင်းဇယားများကိုလျင်မြန်စွာရယူနိုင်သည်။ မည်သို့ပင်ရှိပါစေ string_chars နှင့် array_map ၏သက်တမ်းသည်ထိရောက်သောဖြေရှင်းနည်းများကိုပေးသည်။
PHP တွင် count_chars နှင့် array_map functions များကို အသုံးပြု. ဇာတ်ကောင်ကြိမ်နှုန်းကိုလျင်မြန်စွာနှင့်ထိရောက်စွာကိုင်တွယ်နိုင်သည်။ COURS_CHARS သည် ကြိမ်နှုန်းစာရင်းအင်းများကိုထောက်ပံ့ပေးသည် ။ ဤလုပ်ဆောင်ချက်နှစ်ခုကိုပေါင်းစပ်ခြင်းအားဖြင့် string ကိုဆန်းစစ်ခြင်းနှင့်စာသားပြုပြင်ခြင်းကဲ့သို့သောဖြစ်ရပ်များတွင်အချိန်နှင့်အားထုတ်မှုများကိုသင်သိမ်းဆည်းနိုင်သည်။
သက်ဆိုင်သောတက်(ဂ်)များ:
array_map