Pereiti prie turinio

[PHP] Kam reikalingas serialize?


Rekomenduojami pranešimai

Saugodamas tam tikro produkto savybes pasinaudojau serialize, tarkim turiu vieną mysql lauką kuriame saugomos įvairios savybės apie produktą (spalva, pagaminimo metai, matmenys), o kas jei reikia padaryti filtravimą? Tarkim man reikia pakoreguoti SQL užklausą jog jei vartotojas nori jam parodyti tik tam tikros spalvos produktą? Serializuotos reikšmės į SQL neįkiši, o daryti vėl unserialize nepatogu, tai man kylą klausymas kam iš praktinės pusės reikalingas serialize? Ne paprasčiau kiekvienai reikšmei kurti atskirą DB lauką jei jis ateityje galės būti panaudotas kokioje nors užklausoje?

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Saugodamas tam tikro produkto savybes pasinaudojau serialize, tarkim turiu vieną mysql lauką kuriame saugomos įvairios savybės apie produktą (spalva, pagaminimo metai, matmenys), o kas jei reikia padaryti filtravimą? Tarkim man reikia pakoreguoti SQL užklausą jog jei vartotojas nori jam parodyti tik tam tikros spalvos produktą? Serializuotos reikšmės į SQL neįkiši, o daryti vėl unserialize nepatogu, tai man kylą klausymas kam iš praktinės pusės reikalingas serialize? Ne paprasčiau kiekvienai reikšmei kurti atskirą DB lauką jei jis ateityje galės būti panaudotas kokioje nors užklausoje?

 

Būtų puiku jeigu kažkas galėtų apšviesti, kaip reikėtų saugoti produktų savybes, kad vėliau būtų galima atlikti paiešką.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

"Serialize" naudojamas išsaugoti duomenims, ir lengvai juos vėl pervesti į kintamuosius. Tavo atveju (SQL) reiktų poros papildomų lentelių: savybių pavadinimams saugoti (spalva, dydis), o kitoj lentelėj saugoti duomenis (raudonas, žalias, mažas, didelis, ...).

 

Lentelė "produktai":

produktoID - pavadinimas - daž kažkas...

 

Lentelė "savybės":

savybėsID - pavadinimas

 

Lentelė "duomenys":

duomenuID - produktoID - savybėsID - reikšmė

Redagavo Plx
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Serialize skirtas tam, kad galėtum gražiai supakuoti ir išpakuoti PHP objektą – ne kokį nors įprastą stringą ar int'ą, o būtent kažkokį PHP native dalyką. Pavyzdžiui, klasės instanciją su visais atributais ir t.t.

 

Normaliam filtravimui turėtum pasidaryti schemą, panašią į tai, ką Plx parašė ir daryti užklausas su daug JOIN'ų :) Aišku, ORM gali labai padėti tokiuose dalykuose.

 

O šiaip, jei nori labai laisvos struktūros, tai gal net vertėtų pasidomėti kitokiomis DB, nei SQL.

Redagavo Silke
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

×
×
  • Pasirinkite naujai kuriamo turinio tipą...