jQueryTips by Tee++;

  • Home
  • Videos
  • jQueryTips's Fans

Coding like playing a piano.

Subscribe RSS

Search

Search

Sponsored

jQueryTips on Social

Followers

hide
Chainnnn Pang25441 Dexteri@n Ton KanexKane Supachai JustDoIt Rut petchy Tophit anndrew Webmaster

Categories

hide
  • Programing
  • Database
  • Framework
  • Mobile Development
    • Titanium Mobile
    • PhoneGap
  • Life

Tag Cloud

hide
PHP JavaScript MySQL XML Mobile jQuery CodeIgniter Hash php xml Debug Library Zend API Events Plugins Facebook Basic Registration Tool Twitter Search Swath Performance ffmpeg YouTube Web Service Yahoo! NoSQL MongoDB PhoneGap

Recent Posts

hide
  • ใครๆ ก็มี Utils เอางี้เราเพิ่ม Utils ให้กับ CodeIgniter กันบ้าง
  • แนะนำ JS.Class (A JavaScript class library)
  • PHP กับ OOP มาปูพื้นฐานกันเสียใหม่ก่อน
  • ประกาศข่าวสารจาก Admin
  • JSFIDDLE สุดยอด Tools สำหรับการ Debug การเขียนตัวอย่างโคด
  • Titanium Mobile + HTML + Native Scrolling
  • HTML to PDF ตัวไหนดี วันนี้ผมมีคำตอบ ...
  • ทำความรู้จักกับ JavaScript Pattern ในเชิงลึก
  • ผมบอกคุณแล้ว .... คนโง่ก็ Code ได้
  • วันนี้ มาออกแบบ Web Service ด้วย PHP กันเถอะ (CodeIgniter Version)

Recent Comments

hide
  • เยดดดด
  • มีตัวอย่าง CI แบบ เพียว ๆ ไหมครับ
  • ขอบคุณมากครับ เห็นแนวทางได้ชัดขึ้นจากตอนแรก ที่งงไปหมด ไม่รู้อะไรเป็นอะไร
  • ขอบคุณมากเลยครับท่าน....แหม่เพิ่มกำลังใจให้ผมได้เยอะเลย ตอนนี้กำลังฝึกงานอยู่ที่แห่งนึงในหาดใหญ่ พร้อมเด็กจากอีกสถาบันนึง 3 คน เราคิดว่าเรา…
  • Very good blog, I really like ~

Links

hide
  • OSCOOL
  • Architeture & Performance
  • Video and TV
  • Appcelerator
  • PhoneGap
  • Home
  •  » Blogs

มีกี่วิธีในการเก็บ Array / Object ลงฐานข้อมูล

Mar 22, 2009 2:34:19 PM | 2 Comments | in Programing | PHP
ตอนนี้อยู่ข้างนอก ล้างรถ (อีกแล้ว) ก็ว่างๆ ไม่รู้จะทำไรดี เด็กข้างๆ มันเปิดการ์ตูน ไรไม่รู้ T_T ก็เลยมาอัพเดทกันซะหน่อย

หลายๆ week หลังๆ มานี่เขียนแต่ jQuery กลัวเพื่อนๆ จะเบื่อ เลยเอา เทคนิค PHP มาอัพเดท กัน ซึ่งจริงๆ แล้วมันเป็น basic น่ะครับ ใครที่รู้อยู่แล้ว จะข้ามไปเลยก็ได้ พอดีขี้เกียจคิดไรที่ีมัน ยากๆ มีเวลาน้อย กลัวจะต้องอธิบายกันยาวไป

บทตความที่จะมาเสนอวันนี้ก็ คือวิธีเก็บข้อมูลง DB แบบ โดยจะจัดเก็บ ชุด Array หรือ Object ลงไป คล้ายๆ การเก็บข้อมูล ซึ่งการเก็บข้อมูลแบบนี้ เรามักเอาไปใช้เก็บพวก mete data ต่างๆ ที่ข้อมูลมันไม่คงที่ เช่น

ผมจะออกแบบ Database ที่เก็บเรื่อง ค่าตกแต่งใน Blog ซึ่งมันอาจจะ มีทั้ง layout, color, permission ไร เยอะแยะวุ่นวาย และใน อนาคต มันอาจจะมี field เพิ่มมาอีกแบบไม่รู้ตัว แทนที่ผมจะเก็บเป็น Colums ยาวเป็นหางว่าว ผมก็จะออกแบบ อย่างนี้แทน

meta_id | user_id | meta_name | meta_values

โดยที่ mata_values ผมจะเก็บข้อมูล เยอะแยะตาแป๊ะไก๋ ผมก็จะมีวิธีเก็บ 3 วิธี (มันน่าจะมีวิธีอื่นอีก แต่ผมนึกออกแค่นี้แหละ) ดังนี้

1. เก็บเป็น query string (array only)

$value['layout'] = 'default';

$value['color'] = 'red';

$value['other'] = 'xxx';

$values = http_build_query($value);

Decode: parse_str($values);

2. เก็บเป็น PHP Serialize (array|object)

$value['layout'] = 'default';

$value['color'] = 'red';

$value['other'] = 'xxx';

$values = serialize($value);

Decode: unserialize($values);

3. เก็บเป็น JSON Format (array|object)

$value['layout'] = 'default';

$value['color'] = 'red';

$value['other'] = 'xxx';

$values = json_encode($value);

Decode: json_decode($values);



*** สำหรับ json ถ้าไม่ได้ลง extension ไว้ ให้ใช้ lib แทนได้

เท่านี้เราก็จะสามารถเก็บข้อมูล ได้อย่าง ยืดหยุ่นและเหมาะกับงานของเรามากขึ้นแล้วล่ะ

ปล. วิธีนี้ยังเอาไปใช้ได้อีกหลายอย่างนอกจาก DB อาทิเช่น session, cookie, caching, query string ลองเอาไปเล่นกันดู

วันนี้ก็ขอ แค่นี้ละกันเพราะว่ารถใกล้จะได้แล้ว ^^

twitter stumbleupon delicious digg facebook

2 comments

Add comment Load previous All comments

Leave a comment

Post Comment

Powered by OSCOOL. You may view this on RSS or ATOM.

OSCOOL

  • Twitter
  • Facebook
  • Next