PHP: Strrpos သုံးပြီးစာလုံးကိုဖြတ်ပြီးဖြတ်သွားပါ

html ကုဒ်ကို

အကယ်၍ သင်သည် PHP နှင့်အတူအလုပ်လုပ်နေပြီးသင်၏မူလစာသားမှကောက်နုတ်ချက်တစ်ခုကိုသာဖော်ပြလိုပြီးအက္ခရာအတော်များများတွင်ဖြတ်တောက်လိုလျှင်၎င်းကောက်နှုတ်ချက်သည်နှစ်လယ်ပိုင်းတွင်လုပ်လျှင်အရုပ်ဆိုးသွားနိုင်သည်။ ငါလုပ်ဖို့ function တစ်ခုရေးခဲ့ရတယ် ASP နှင့် ASP.NET မှာနောက်ဆုံးအက္ခရာကနေစက်ဝိုင်းစီးပြီးနောက်ဆုံးအာကာသကိုရှာပြီးအဲဒီမှာဖြတ်လိုက်တယ်။ လည်ချောင်းနာနှင့် overkill ၏နည်းနည်း။ ဒါကိုငါ့အိမ်မှာတကယ်လုပ်လို့ရတယ် စာမျက်နှာ ငါသာပထမ ဦး ဆုံးဇာတ်ကောင် 500 ပေးဘယ်မှာ။

ယနေ့ခေတ် PHP နှင့်အတူတူပင် function ကိုတီထွင်ရန်အသင့်ရှိနေသော်လည်း PHP တွင်လုပ်ဆောင်နေသော function ရှိသည် (ပုံမှန်အတိုင်း) ကိုတွေ့ရှိခဲ့သည်။ နင်.

ကုဒ်အဟောင်းသည်ပထမစာလုံးမှ substring ($ content) ကိုသင်အများဆုံးလိုချင်သောစာလုံးရေ ($ maxchars) သို့ယူသွားလိမ့်မည်။

$ content = substr ($ content, 0, $ maxchars); echo $ အကြောင်းအရာ၊

ကုဒ်အသစ်

$ content = substr ($ content, 0, $ maxchars); $ pos = strrpos ($ အကြောင်းအရာ၊ ""); if ($ pos> 0) {$ content = substr ($ content, 0, $ pos); } အကြောင်းအရာ echo;

ဒါကြောင့် code အသစ်ကသင်ရှာဖွေနေတဲ့ character limit မှာအကြောင်းအရာကိုအရင်ဖြတ်ပါ သို့သော်နောက်တစ်ဆင့်မှာအကြောင်းအရာရှိနောက်ဆုံးနေရာ (““) ကိုရှာဖွေရန်ဖြစ်သည်။ $ pos ကြောင်းအနေအထားဖြစ်ခြင်းတက်လေလိမ့်မယ်။ အခုတော့ငါ pos ကို $ pos> 0 ရှိမရှိမေးမြန်းခြင်းအားဖြင့်အကြောင်းအရာထဲမှာအာကာသရှိတကယ်တော့သေချာ။ အကယ်၍ မရှိပါက၎င်းသည်ကျွန်ုပ်တောင်းဆိုသောစာလုံးအရေအတွက်ကိုသာဖြတ်တောက်လိမ့်မည်။ နေရာလွတ်ရှိလျှင်၊ ကျွန်ုပ်သည်ကျွန်ုပ်၏အကြောင်းအရာကိုအာကာသထဲတွင်လျောက်ပတ်စွာဖြတ်ပစ်လိမ့်မည်။

ဤသည်မှာအက္ခရာအများဆုံးအရေအတွက်ပေါင်းစပ်အသုံးပြုခြင်းနှင့်စာလုံးကိုဖြတ်တောက်ခြင်းကိုအကောင်းဆုံးနည်းလမ်းဖြစ်သည်။ မင်းကြိုက်လားမျှော်လင့်ပါတယ်

ပြီးတော့ ASP.NET function တစ်ခုခုလုပ်လို့ရလားဆိုတာငါရှာမယ်သေချာတယ်။ အဲဒါကိုငါရှာမရဘူး။

7 မှတ်ချက်

  1. 1
  2. 2
  3. 3
  4. 4

    $content သည် $maxchars ထက် အစပိုင်းတွင် ပိုတိုပါက ရေးထားသည့်အတိုင်း ကုဒ်သည် နေရာလွတ်တစ်ခုအတွက် ဘယ်ဘက်သို့ ညာဘက်တွင် ရှိနေမည်ဖြစ်ပြီး နောက်ဆုံးစာလုံးကို ဖြတ်တောက်မည်ဖြစ်သည်။ $content ၏အဆုံးတွင် space တစ်ခုကို ပေါင်းစပ်နိုင်သည် သို့မဟုတ် if (strlen()…)

  5. 5

    ၎င်းသည် လုပ်ဆောင်ချက်တစ်ခုအနေဖြင့် လုပ်ဆောင်ပုံပေါ်သည် (ယခင်မှတ်ချက်ကို ဖြေရှင်းခြင်း)။

    function show excerpt($content၊ $maxchars) {

    အကယ်၍ (strlen($content) > $maxchars) {

    $content= substr($content၊ 0၊ $maxchars);
    $pos = strrpos($content, " ");

    အကယ်၍ ($pos>0) {
    $content = substr($content၊ 0၊ $pos);
    }

    $content ကို ပြန်ပေးပါ။ "…";

    } သည်အခြား {

    ပြန်လာ $ အကြောင်းအရာ;

    }

    }

  6. 6

    ကျွန်ုပ်တို့၏ နောက်ဆုံးအက္ခရာသည် အဆုံးအဖြတ်၊ အာမေဋိတ်အမှတ်အသား သို့မဟုတ် မေးခွန်းအမှတ်အသားကဲ့သို့ သတ်ပုံအက္ခရာဖြစ်ပါက၊ ကံမကောင်းစွာပဲ၊ ဤကုဒ်သည် ရှေ့ကပြောခဲ့သော သတ်ပုံအက္ခရာတစ်ခုလုံးကို ရှင်းပစ်မည်ဖြစ်သည်။  

    နည်းနည်းပိုခိုင်ခံ့အောင်ရေးတာ ပိုကောင်းမယ်ထင်တယ်။

  7. 7

သင်ဘယ်လိုထင်ပါလဲ?

ဤ site ကိုစပမ်လျှော့ချဖို့ Akismet ကိုအသုံးပြုသည်။ သင့်ရဲ့ comment ကိုဒေတာများကိုဆောင်ရွက်ပြီးဖြစ်ပါတယ်လေ့လာ.