လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> PHP Mall ၏ထုတ်ကုန်အမျိုးအစားခွဲခြားခြင်းနှင့် filtering function ကိုအကောင်အထည်ဖော်ရန်သင်ခန်းစာ - အသုံးပြုသူစျေး 0 ယ်ခြင်းအတွေ့အကြုံကိုတိုးတက်အောင်ပြုလုပ်ခြင်း

PHP Mall ၏ထုတ်ကုန်အမျိုးအစားခွဲခြားခြင်းနှင့် filtering function ကိုအကောင်အထည်ဖော်ရန်သင်ခန်းစာ - အသုံးပြုသူစျေး 0 ယ်ခြင်းအတွေ့အကြုံကိုတိုးတက်အောင်ပြုလုပ်ခြင်း

M66 2025-06-16

PHP Mall ရှိထုတ်ကုန်အမျိုးအစားခွဲခြားခြင်းနှင့် function function ကိုအကောင်အထည်ဖော်ခြင်းအပေါ်သင်ခန်းစာ

PHP Mall System ကိုတီထွင်သောအခါထုတ်ကုန်ခွဲခြားခြင်းနှင့်စစ်ထုတ်ခြင်းလုပ်ဆောင်ချက်များသည်အသုံးပြုသူအတွေ့အကြုံကိုတိုးတက်စေရန်အဓိကဒြပ်စင်များဖြစ်သည်။ ကျိုးကြောင်းဆီလျော်သောထုတ်ကုန်ခွဲခြားခြင်းနှင့် filtering function များသည်သုံးစွဲသူများကိုသူတို့စိတ်ဝင်စားသောထုတ်ကုန်များကိုလျင်မြန်စွာရှာဖွေရန်, ဤဆောင်းပါးသည် PHP မှတစ်ဆင့်ဤလုပ်ငန်းများကို PHP မှတစ်ဆင့်မည်သို့အကောင်အထည်ဖော်ရမည်ကိုအသေးစိတ်ရှင်းပြပါလိမ့်မည်။

1 ။ ထုတ်ကုန်အမျိုးအစားကိုဖန်တီးပါ

ပထမ ဦး စွာကျွန်ုပ်တို့သည်ထုတ်ကုန်အမျိုးအစားသတ်မှတ်ချက်ဇယားကိုဒေတာဗေ့စ်တွင်ဖန်တီးရန်နှင့်လိုအပ်သောမော်ဒယ်လူတန်းစားကိုဖန်တီးရန်လိုအပ်သည်။ ထုတ်ကုန်အမျိုးအစားခွဲခြားသည့်ဇယားတွင်အနည်းဆုံးအောက်ပါအကွက်များပါ 0 င်သင့်သည်။ ID, NAME နှင့် Parent_id တို့တွင် ID တွင် Auto-incourt Parent_id, အမည်မှာအမည်ခွဲခြားသတ်မှတ်ခြင်းအမည်,

ထုတ်ကုန်အမျိုးအစားခွဲခြားရန်ဇယားတစ်ခုဖန်တီးရန် SQL Code ၏ဥပမာတစ်ခုမှာဤတွင်ဖြစ်သည်။

Table `` အမျိုးအစားများကိုဖန်တီးပါ (
  `ID 'INT (11) IDIGNED AODO_INCONCOMENTENTEST TRAST KENCH,
  `name` varchar (255) NULL,
  `parent_id` int (11) ပုံမှန် null,
  `` created_at` timestamp null ပုံမှန် null,
  `updated_at` timestamp null ပုံမှန် null null
) အင်ဂျင် = Innodb Default Charset = UTF8;

2 ။ ထုတ်ကုန်ခွဲခြားမော်ဒယ်တစ်ခုဖန်တီးပါ

ထို့နောက်ကျွန်ုပ်တို့သည်အမျိုးအစားအမျိုးအစားဟုခေါ်သော Model အမျိုးအစားဟုခေါ်သောအတန်းအစားတစ်ခုဖန်တီးရန်နှင့်သက်ဆိုင်ရာအသင်းဆက်ဆံရေးကိုသတ်မှတ်ရန်နှင့်သက်ဆိုင်သောအသင်းဆက်ဆံရေးကိုသတ်မှတ်ရန်လိုအပ်သည်။

<?php
namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Category extends Model
{
    protected $fillable = ['name', 'parent_id'];

    public function parent()
    {
        return $this-> Senspo (အမျိုးအစား :: Class, &#39;Parent_id&#39;);
    }

    အများပြည်သူလုပ်ဆောင်ချက်ကလေးများ ()
    {
        $:> Hasmany (အမျိုးအစား :: Class, &#39;Parent_id&#39;) ။
    }
}

3 ။ ထုတ်ကုန်အမျိုးအစားကိုပြပါ

ရှေ့ပြေးစာမျက်နှာတွင် Product အမျိုးအစားခွဲခြားမှုအမျိုးအစားများကိုသစ်ပင်များပေါ်တွင်ပြသရန်နှင့်အမျိုးအစားများကိုရွေးချယ်ရန်လွယ်ကူချောမွေ့စေရန်အတွက်သစ်ပင်ဖွဲ့စည်းပုံတစ်ခုတွင်ပြသရန်လိုအပ်သည်။ ဤသည် function ကိုအကောင်အထည်ဖော်သည့်ကုဒ်ဥပမာတစ်ခုမှာ -

<?php
use App\Models\Category;

function displayCategories($categories, $parent_id = 0)
{
    echo '<ul class="category-list"> &#39;&#39;;
    foreach ($ အမျိုးအစားအဖြစ် $ အမျိုးအစားများ) {
        IF ($ အမျိုးအစား -> Parent_id == $ parent_id) {
            ပဲ့တင်သံ<li> &#39;&#39; ။ $ အမျိုးအစား -> အမည်,
            $ ကလေးများ = ဒေါ်လာအမျိုးအစား -> ကလေးများ,
            IF (ရေတွက် ($ ကလေးများ)> 0) {
                DisplaincategateGories ($ ကလေးများ, ဒေါ်လာအမျိုးအစား -> ID);
            }
            ပဲ့တင်သံ</li> &#39;&#39;;
        }
    }
    ပဲ့တင်သံ</ul> &#39;&#39;;
}

$ အမျိုးအစား = အမျိုးအစား :: အားလုံး ();
DisplayCategries ($ အမျိုးအစား);

4 ။ ထုတ်ကုန်စစ် function ကိုအကောင်အထည်ဖော်ခြင်း

ထုတ်ကုန် filtering function သည်အသုံးပြုသူများသည်၎င်းတို့၏လိုအပ်ချက်အရလိုအပ်သောထုတ်ကုန်များကိုလျင်မြန်စွာရှာဖွေရန်ကူညီနိုင်သည်။ များသောအားဖြင့်ထုတ်ကုန်စစ်ဆေးခြင်းတွင်စျေးနှုန်း, အရောင်, အမှတ်တံဆိပ်စသဖြင့် attribute အခြေအနေများပါ 0 င်သည်။

ထုတ်ကုန် filtering အတွက်ကုဒ်ဥပမာတစ်ခု

<?php
use App\Models\Product;

function getFilteredProducts($filters)
{
    $query = Product::query();

    if (isset($filters['price'])) {
        $query-> (&#39;စျေးနှုန်း&#39;, [$ filter များ [ဈေးနှုန်းများ [&#39;FID&#39;], $ filter များ [&#39;Max&#39;s] [&#39; Max &#39;]])
    }

    IF (ISSET ($ forments [&#39;&#39;))))
        $ query- >> &#39;အရောင်&#39;, $ filter များ [&#39;အရောင်&#39;]);
    }

    // အခြားစစ်မြေပြင်ဖြည့်စွက်ငွေ $ ထုတ်ကုန် = $ query-> get ();
    $ ထုတ်ကုန်များကိုပြန်သွားပါ။
}

$ filter များ = $ _post [&#39;filter များ&#39;]; // အသုံးပြုသူ $ ထုတ်ကုန်များမှတင်သွင်းသောစစ်ထုတ်ခြင်းစံနှုန်းများ = GetFilteredProducts ($ filter များ), // filter ကိုစံနှုန်းများနှင့်ကိုက်ညီသောထုတ်ကုန်များကိုရယူပါ

အကျဉ်းချုပ်

ဤဆောင်းပါးတွင်သင်ခန်းစာမှတစ်ဆင့် PHP Mall စနစ်ရှိထုတ်ကုန်ခွဲခြားခြင်းနှင့်စစ်ထုတ်ခြင်းလုပ်ဆောင်မှုများကိုမည်သို့အကောင်အထည်ဖော်ရမည်ကိုသင်လေ့လာသင်ယူခဲ့သည်။ အကျိုးသင့်အကြောင်းသင့်ရှိသောခွဲခြားခြင်းနှင့်စစ်ဆေးခြင်းသည်အသုံးပြုသူအတွေ့အကြုံကိုတိုးတက်စေရုံသာမကသုံးစွဲသူများသည်၎င်းတို့ပိုမိုလိုအပ်သည့်ထုတ်ကုန်များကိုပိုမိုလျင်မြန်စွာရှာဖွေရန်ကူညီသည်။ ဤဆောင်းပါးသည်သင်၏စီမံကိန်းဖွံ့ဖြိုးတိုးတက်မှုအတွက်အထောက်အကူဖြစ်လိမ့်မည်ဟုမျှော်လင့်ပါသည်။