Compact () function ၏အခြေခံ syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
<span><span><span class="hljs-title function_ invoke__">compact</span></span><span>(...</span><span><span class="hljs-variable">$var_names</span></span><span>)
</span></span>
Parameter $ var_namnames သည် array ထဲသို့ပြောင်းလဲရန် variable ၏အမည်ကိုကိုယ်စားပြုသည့်ကြိုးတစ်ချောင်းသို့မဟုတ်တစ်ခုထက်ပိုသောကြိုးကြိုးများဖြစ်သည်။ Return Value သည် variable name နှင့်၎င်း၏သက်ဆိုင်ရာတန်ဖိုးကိုပါ 0 င်သည့်အပေါင်းအသင်းခင်းကျင်းမှုတစ်ခုဖြစ်သည်။ အကယ်. variable ကို undefined သို့မဟုတ်၎င်း၏တန်ဖိုးသည် NULL , Compact () သည် ပြန်လည်နေရာချထားသည့်ခင်းကျင်းမှုတွင် variable တွင်ရှိနေသေးသည်။
ဥပမာအားဖြင့်:
<span><span><span class="hljs-variable">$name</span></span><span> = </span><span><span class="hljs-string">"John"</span></span><span>;
</span><span><span class="hljs-variable">$age</span></span><span> = </span><span><span class="hljs-number">25</span></span><span>;
</span><span><span class="hljs-variable">$city</span></span><span> = </span><span><span class="hljs-string">"New York"</span></span><span>;
</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">compact</span></span><span>(</span><span><span class="hljs-string">"name"</span></span><span>, </span><span><span class="hljs-string">"age"</span></span><span>, </span><span><span class="hljs-string">"city"</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>
ထုတ်လုပ်မှု -
<span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
(
[name] => John
[age] => </span><span><span class="hljs-number">25</span></span><span>
[city] => New York
)
</span></span>
ဤဥပမာတွင် ကျစ်လစ်သိပ်သည်းသော () function သည် variable သုံးခုကိုအောင်မြင်စွာထုပ်ပိုးပြီးအောင်အောင်မြင်စွာထုပ်ပိုးထားသည်။
PHP ၏ကျစ် လစ် သိပ်သည်း သော () function တွင် variable တွင် variable တစ်ခုပါ 0 င် သည်။
ဥပမာအားဖြင့်:
<span><span><span class="hljs-variable">$name</span></span><span> = </span><span><span class="hljs-literal">null</span></span><span>;
</span><span><span class="hljs-variable">$age</span></span><span> = </span><span><span class="hljs-number">25</span></span><span>;
</span><span><span class="hljs-variable">$city</span></span><span> = </span><span><span class="hljs-string">"New York"</span></span><span>;
</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">compact</span></span><span>(</span><span><span class="hljs-string">"name"</span></span><span>, </span><span><span class="hljs-string">"age"</span></span><span>, </span><span><span class="hljs-string">"city"</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>
ထုတ်လုပ်မှု -
<span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
(
[name] =>
[age] => </span><span><span class="hljs-number">25</span></span><span>
[city] => New York
)
</span></span>
အပေါ်ကပြထားတဲ့အတိုင်း နာမည် ရဲ့တန်ဖိုးက null ဖြစ်တယ်, ဒါပေမယ့် Array မှာရှိနေဆဲပါ ။
အချို့သောအခြေအနေများတွင်ကျွန်ုပ်တို့သည်တရားမ 0 င်သောခင်းကျင်းမှုတွင် NULL သို့မဟုတ် NULL valuses များကိုမလိုချင်ပါ။ ဤအခြေအနေကိုပိုမိုကောင်းမွန်သောကိုင်တွယ်ရန် Compact () ၏ရလဒ်များကို array_filter () function မှတဆင့် filtered နိုင်ပါတယ်။ array_filter () သည် null တန်ဖိုးများကိုခင်းကျင်းခြင်း ( NULL , အချည်းနှီးသော string အပါအ 0 င ်) ကိုဖယ်ရှားနိုင်သည်။
<span><span><span class="hljs-variable">$name</span></span><span> = </span><span><span class="hljs-literal">null</span></span><span>;
</span><span><span class="hljs-variable">$age</span></span><span> = </span><span><span class="hljs-number">25</span></span><span>;
</span><span><span class="hljs-variable">$city</span></span><span> = </span><span><span class="hljs-string">"New York"</span></span><span>;
</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_filter</span></span><span>(</span><span><span class="hljs-title function_ invoke__">compact</span></span><span>(</span><span><span class="hljs-string">"name"</span></span><span>, </span><span><span class="hljs-string">"age"</span></span><span>, </span><span><span class="hljs-string">"city"</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>
ထုတ်လုပ်မှု -
<span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
(
[age] => </span><span><span class="hljs-number">25</span></span><span>
[city] => New York
)
</span></span>
array_filter () မှတစ်ဆင့် Null တန်ဖိုးကို ရလဒ်မှဖယ်ရှားပစ်လိုက်ပြီးသက်တမ်းရှိသည့် အသက်အရွယ် နှင့် မြို့ သာအဆုံး၌ထိန်းသိမ်းထားသည်။
သငျသညျ filtering စည်းမျဉ်းစည်းကမ်းများကိုပိုမိုတိကျစွာထိန်းချုပ်လိုလျှင် (ထိုကဲ့သို့သောရလဒ်အချည်းနှီးဖြစ်သောကြိုးသို့မဟုတ်သုညသို့မဟုတ်သုညများကိုစစ်ထုတ်ခြင်း) ကိုထိန်းချုပ်လိုပါက array_filter () တွင် Custom callback function ကိုသင်ဖြတ်သွားနိုင်သည်။
ဥပမာအားဖြင့်:
<span><span><span class="hljs-variable">$name</span></span><span> = </span><span><span class="hljs-string">""</span></span><span>;
</span><span><span class="hljs-variable">$age</span></span><span> = </span><span><span class="hljs-number">25</span></span><span>;
</span><span><span class="hljs-variable">$city</span></span><span> = </span><span><span class="hljs-literal">null</span></span><span>;
</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">array_filter</span></span><span>(</span><span><span class="hljs-title function_ invoke__">compact</span></span><span>(</span><span><span class="hljs-string">"name"</span></span><span>, </span><span><span class="hljs-string">"age"</span></span><span>, </span><span><span class="hljs-string">"city"</span></span><span>), function(</span><span><span class="hljs-variable">$value</span></span><span>) {
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-variable">$value</span></span><span> !== </span><span><span class="hljs-literal">null</span></span><span> && </span><span><span class="hljs-variable">$value</span></span><span> !== </span><span><span class="hljs-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>
ထုတ်လုပ်မှု -
<span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
(
[age] => </span><span><span class="hljs-number">25</span></span><span>
)
</span></span>
ဤဥပမာတွင် callback function သည် NULL နှင့် NUR-Non-Non-Wings ၏တန်ဖိုးများကိုသာနောက်ဆုံးပြင်ဆင်ခြင်းတွင်သာသိမ်းဆည်းထားကြောင်းသေချာစေသည်။
အကယ်. Compact () ကို undefined ဟုခေါ်သောအခါအချို့ variable အချို့ကိုဖြတ်သန်းသွားပါက၎င်းတို့ကိုအလိုအလျောက်လျစ်လျူရှုထားပြီးပြန်လည်နေရာချထားသည့်ခင်းကျင်းမှုတွင်မပေါ်ပါ။ သို့သော် variable တစ်ခုတန်ဖိုးသည် တရားမဝင် ပါကရလဒ်တွင်ပေါ်လာလိမ့်မည်။
<span><span><span class="hljs-variable">$age</span></span><span> = </span><span><span class="hljs-number">25</span></span><span>;
</span><span><span class="hljs-variable">$city</span></span><span> = </span><span><span class="hljs-string">"New York"</span></span><span>;
</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">compact</span></span><span>(</span><span><span class="hljs-string">"name"</span></span><span>, </span><span><span class="hljs-string">"age"</span></span><span>, </span><span><span class="hljs-string">"city"</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>
ထုတ်လုပ်မှု -
<span><span><span class="hljs-title function_ invoke__">Array</span></span><span>
(
[age] => </span><span><span class="hljs-number">25</span></span><span>
[city] => New York
)
</span></span>
အထက်ဖော်ပြပါဥပမာတွင် $ အမည် အနိမ့်ဆုံးဖြစ်သောကြောင့်၎င်းသည်ပြန်လည်ရောက်ရှိသောခင်းကျင်းမှုတွင်မပေါ်ပါ။
Compact () သည် PHP တွင် variable များကို Associable Array သို့ပြောင်းလဲစေသည့်အလွန်အသုံးဝင်သောလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ Null တန်ဖိုးများကိုပြုပြင်သည့်အခါ ကျစ်လစ်သိပ်သည်း () သည် တန်ဖိုးကို Null နှင့်အတူခင်းကျင်းမှုတွင်ဤ variable များတွင်ဤ variable များပါရှိသည်။ အကယ်. သင်သည် Array သို့မဟုတ် null devices များမပါဝင်စေလိုပါက၎င်းကို array_filter () function မှတဆင့် filter ကို filter လုပ်နိုင်ပါတယ်။
ဤလှည့်ကွက်များနှင့်အတူ compact () ကို အသုံးပြုသောအခါ,
သက်ဆိုင်သောတက်(ဂ်)များ:
null