<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// နိဒါန်း:ဆောင်းပါး၏အကြောင်းအရာနှင့်မသက်ဆိုင်သောဥပမာများ PHP လုံးပေါင်းပြဌါန်းသည့်ဉပဒေ</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"ဝမ်းသာစွာနှုတ်ဆက်ခြင်း PHP ကျပန်းနံပါတ် Generator နမူနာအစီအစဉ်!\n"</span></span><span>;
</span><span><span class="hljs-variable">$date</span></span><span> = </span><span><span class="hljs-title function_ invoke__">date</span></span><span>(</span><span><span class="hljs-string">"Y-m-d H:i:s"</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"လက်ရှိအချိန်:"</span></span><span> . </span><span><span class="hljs-variable">$date</span></span><span> . </span><span><span class="hljs-string">"\n"</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">str_repeat</span></span><span>(</span><span><span class="hljs-string">"-"</span></span><span>, </span><span><span class="hljs-number">40</span></span><span>) . </span><span><span class="hljs-string">"\n"</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
---
</span><span><span class="hljs-comment"># ဘယ်လိုဖြတ်သန်းရမလဲ srand() ထိန်းချုပ်ရန်လုပ်ဆောင်ချက်များကို PHP ကျပန်းနံပါတ်များဖြန့်ဖြူး၏အကွာအဝေး?လက်တွေ့ကျတဲ့ကျွမ်းကျင်မှုများကိုမျှဝေပါ</span></span><span>
တည်နေ PHP ယေဘုယျအားဖြင့်ကျပန်းနံပါတ်များကိုထုတ်လုပ်ပါ `</span><span><span class="hljs-title function_ invoke__">rand</span></span><span>()` သို့မဟုတ် `</span><span><span class="hljs-title function_ invoke__">mt_rand</span></span><span>()` လုပ်ဆောင်ချက်,နှင့် `</span><span><span class="hljs-title function_ invoke__">srand</span></span><span>()` ၎င်းသည်ကျပန်းနံပါတ်မီးစက်မျိုးစေ့ကိုသတ်မှတ်ရန်အသုံးပြုသည်,从နှင့်能够控制生成的随机数序列。တည်နေ一些需要可重复随机结果的场景中,ကျိုးကြောင်းဆီလျော်သောအသုံးပြုမှု `</span><span><span class="hljs-title function_ invoke__">srand</span></span><span>()` ၎င်းသည် developer များပိုမိုတိကျစွာကျပန်းနံပါတ်များကိုဖြန့်ဖြူးအကွာအဝေးကိုထိန်းချုပ်ရန်ကူညီနိုင်သည်。
</span><span><span class="hljs-comment">## 1. srand() အခြေခံအသုံးပြုမှု</span></span><span>
`</span><span><span class="hljs-title function_ invoke__">srand</span></span><span>()` အဆိုပါ syntax အလွန်ရိုးရှင်းပါသည်:
```php
</span><span><span class="hljs-title function_ invoke__">srand</span></span><span>(</span><span><span class="hljs-keyword">int</span></span><span> </span><span><span class="hljs-variable">$seed</span></span><span>);
</span></span>$ မျိုးစေ့ - ကျပန်းနံပါတ်မီးစက်ကိုအစပြုလေ့ကျင့်သုံးလေ့ရှိသည်။ တူညီသောမျိုးစေ့သည်ကျပန်းနံပါတ်များကိုတူညီသောအစီအစဉ်ကိုထုတ်ပေးသည်။
ဥပမာအားဖြင့်:
<span><span><span class="hljs-title function_ invoke__">srand</span></span><span>(</span><span><span class="hljs-number">1234</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">rand</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-comment">// တစ်ခုချင်းစီကိုပြေးတူညီသောကျပန်းနံပါတ် output output ကိုဖြစ်လိမ့်မည်</span></span><span>
</span></span>မျိုးစေ့ကိုချမှတ်ခြင်းအားဖြင့်ကျပန်းနံပါတ် sequence ကို "fixed" နိုင်ပြီး, ကျပန်းယုတ္တိဗေဒကိုစစ်ဆေးခြင်းနှင့်စမ်းသပ်ခြင်းတွင်အလွန်အသုံးဝင်သည်။
Srand () ကို အစေ့များကိုအစေ့ကိုအစေ့များကို အစပြု. အသုံးပြုသော်လည်းကျပန်းနံပါတ်များကိုထိန်းချုပ်ခြင်းသည် Rand (Min, Max) မှပြုလုပ်သည်။ ဥပမာအားဖြင့်:
<span><span><span class="hljs-title function_ invoke__">srand</span></span><span>(</span><span><span class="hljs-number">5678</span></span><span>); </span><span><span class="hljs-comment">// အစေ့ကိုသတ်မှတ်</span></span><span>
</span><span><span class="hljs-variable">$randomNumber</span></span><span> = </span><span><span class="hljs-title function_ invoke__">rand</span></span><span>(</span><span><span class="hljs-number">50</span></span><span>, </span><span><span class="hljs-number">150</span></span><span>); </span><span><span class="hljs-comment">// 随机数范围တည်နေ 50 ရောက်လာ 150</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$randomNumber</span></span><span>;
</span></span>ဤကုဒ်ကိုအာမခံချက်များ -
ကျပန်းနံပါတ်သည် 50 နှင့် 150 အကြားအမြဲဖြစ်သည်။
တူညီသောမျိုးစေ့ကို အသုံးပြု. တစ် ဦး ချင်းစီကိုအချိန်ယူရသည့်အတွက်ကျပန်းနံပါတ် sequence သည်အတူတူဖြစ်သည်။
သင်ထုတ်လုပ်သောကျပန်းနံပါတ်များကိုအချို့သောအချိန်ကာလတစ်ခုအတွင်းအညီအမျှဖြန့်ဝေရန်လိုပါကမျိုးစေ့များနှင့်သင်္ချာဆိုင်ရာစစ်ဆင်ရေးများနှင့်ပေါင်းစပ်နိုင်သည်။ ဥပမာအားဖြင့်:
<span><span><span class="hljs-title function_ invoke__">srand</span></span><span>(</span><span><span class="hljs-number">9876</span></span><span>);
</span><span><span class="hljs-variable">$randomArray</span></span><span> = [];
</span><span><span class="hljs-keyword">for</span></span><span> (</span><span><span class="hljs-variable">$i</span></span><span> = </span><span><span class="hljs-number">0</span></span><span>; </span><span><span class="hljs-variable">$i</span></span><span> < </span><span><span class="hljs-number">10</span></span><span>; </span><span><span class="hljs-variable">$i</span></span><span>++) {
</span><span><span class="hljs-variable">$num</span></span><span> = </span><span><span class="hljs-title function_ invoke__">rand</span></span><span>(</span><span><span class="hljs-number">1</span></span><span>, </span><span><span class="hljs-number">10</span></span><span>);
</span><span><span class="hljs-variable">$randomArray</span></span><span>[] = </span><span><span class="hljs-variable">$num</span></span><span>;
}
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">implode</span></span><span>(</span><span><span class="hljs-string">", "</span></span><span>, </span><span><span class="hljs-variable">$randomArray</span></span><span>);
</span></span>ဤနည်းဖြင့်ထုတ်လုပ်ထားသောကျပန်းနံပါတ်များသည် 1 မှ 10 ခုကြားတွင်ရှိသည်။ ဤသည် Simulated Test Data သို့မဟုတ်ထပ်ခါတလဲလဲစမ်းသပ်ဇာတ်လမ်းများအတွက်အလွန်အသုံးဝင်သည်။
PHP 7.1 ပြီးနောက် Srand () နှင့် Rand () ကိုအသုံးပြုခြင်းသည်မရှိတော့ပါ။ တာဝန်ရှိသူက Surform နှင့်အညီအမျှဖြန့်ဝေနေသော ကျပန်း () သို့မဟုတ် ကျပန်း () () () () () () () () () ()) ကိုအသုံးပြုသည်။
Srand () MT_rand () , MT_SRAND () ၏ရလဒ်ကိုမပြောင်းလဲနိုင်တော့ပါ ။ MT_rand () တွင်အသုံးပြုသင့်သည်။
မြင့်မားသောကြိုတင်ခန့်မှန်းမှုလိုအပ်ချက်များနှင့်အတူဖြစ်ရပ်များအတွက်, ရလဒ်များကိုပြင်ပမှဟောကိန်းထုတ်ခံရဖို့ပြင်ဆင်ထားတဲ့မျိုးစေ့တွေကိုသတိထားပါ။
PHP ကျပန်းနံပါတ်များ၏အကွာအဝေးနှင့်ထပ်ခါတလဲလဲကို Srand မှမျိုးစေ့များချမှတ်ခြင်းဖြင့်အလွယ်တကူထိန်းချုပ်နိုင်သည် ။
Fixed မျိုးစေ့ →တူညီသောကျပန်း sequence ကို။
Rand (MIN, MAS) →တန်ဖိုးများ၏အကွာအဝေးကိုထိန်းချုပ်ပါ။
Debugging နှင့် Testing →ပုံသေအစီအစဉ်များကိုအသုံးပြုပြီးစမ်းသပ်ချက်များကိုတုပပါ။
Srand ၏ဆင်ခြင်တုံတရားအသုံးပြုခြင်း () သည်ဖွံ့ဖြိုးတိုးတက်မှု, စမ်းသပ်ခြင်းနှင့်ဒေတာဥပမာများ၌ကျပန်းနံပါတ်စီမံခန့်ခွဲမှု၏ထိန်းချုပ်မှုနှင့်ကြိုတင်ခန့်မှန်းနိုင်မှုကိုများစွာတိုးတက်စေနိုင်သည်။
<span><span><span class="hljs-comment">// Ending ဥပမာ:စာသားနှင့်ဘာမှမဆိုင်ပါဘူး</span></span><span>
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">str_repeat</span></span><span>(</span><span><span class="hljs-string">"-"</span></span><span>, </span><span><span class="hljs-number">40</span></span><span>) . </span><span><span class="hljs-string">"\n"</span></span><span>;
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"ကျပန်းနံပါတ်ဆောင်းပါးသရုပ်ပြအဆုံးသတ်。\n"</span></span><span>;
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>