ใครที่เริ่มบรรทัดการติดต่อดาต้าเบสด้วยภาษา php ด้วยคำสั่ง mysqli_connect(xx,xx) อยู่บ้างยกมือขึ้นครับ ไม่ได้ว่าผิดนะครับ เพราะผมก็เริ่มแบบนี้เหมือนกัน ชอบเขียนด้วยตัวเองตั้งแต่บรรทัดแรกยันสุดท้าย แต่เว็บไซด์ยุคนี้ต้องเน้นสร้างไวและเสียเวลากับเรื่องไม่จำเป็นให้น้อยที่สุด สมองจะได้ปลอดโปร่ง มีเวลาไปพักผ่อนสะสมแรงใหม่อีกครั้ง
ถ้า Develop เว็บไซด์ด้วย PHP ก็มีหลายหลายเฟรมเวิร์คเลยครับ ที่ทำให้การเขียนโค๊ดประหยัดแรงมากขึ้น เช่น Wordpress, Drupal, Yii, Codeigniter etc. มีเวลาไล่เรียงทั้งวันก็ไม่ครบ แต่ละตัวก็มีคุณสมบัติที่แตกต่างกัน ถึงขนาดมีคนเอา performance มาเปรียบเทียบกันให้รู้กันไปข้างนึงว่าใครดีกว่าใคร ผมอ่านแล้วปวดหัวตามครับ เลยท่องเว็บออกตามหา Database Framework แบบเบาๆ ไม่กินแรมเครื่องมหาศาล แต่ผลลัพธ์ที่ได้น่าพอใจ สุดท้ายมาจบที่ Medoo ตามเว็บไซด์นี้เลยครับ http://medoo.in
วิธีการใช้งานก็กล้วยแสนกล้วย แค่เข้าเว็บไซด์ของเค้า แล้วไปดาว์นโหลดคลาส Medoo.php เว่อร์ชั่นล่าสุดมาใช้งาน เวลาจะใช้กับไฟล์ไหน ก็เพียงแค่ require_once(‘Medoo.inc.php’); เข้ามาด้วย แล้วทั้งคลาสก็พร้อมให้ท่านเรียกใช้ได้เลยครับ ตามรูปด้สนล่าง
ที่เหลือก็เพียงแค่ new object มันขึ้นมาใหม่ ด้วยโค๊ดบรรทัดนี้
$database = new medoo('my_database');
ตัวอย่าง การ select ข้อมูลจาก table ชื่อว่า Account แล้วรับ array ที่รีเทิร์นกลับมา $datas อธิบายคร่าวๆตามภาพคือเลือกมา 2 fields คือ user_name และ email โดยมีเงื่อนไขเพิ่มเข้าไปคือ user_id มากกว่าหรือเท่ากับ 100
1.
$datas = $database->select("account", [
2.
"user_name",
3.
"email"
4.
], [
5.
"user_id[>]" => 100
6.
]);
ตัวอย่างการ Insert ข้อมูลหลาย record โดยใช้ JSON โดยเพิ่มลงในตาราง account และเซ็ตฟิลล์ user_name, email, age,city,lang
// Multi-insertion (since Medoo 0.9)
1.
$last_user_id = $database->insert("account", [
2.
[
3.
"user_name" => "foo",
4.
"email" => "foo@bar.com",
5.
"age" => 25,
6.
"city" => "New York",
7.
"lang" => ["en", "fr", "jp", "cn"]
8.
],
9.
[
10.
"user_name" => "bar",
11.
"email" => "bar@foo.com",
12.
"age" => 14,
13.
"city" => "Hong Kong",
14.
"lang" => ["en", "jp", "cn"]
15.
]);
นอกจากนี้ยังมีคำสั่งพื้นฐานที่สำคัญอยู่ครบถ้วน insert ,update, delete, select ด้วยเงื่อนไข AND OR, สำหรับใครที่สนใจศึกษาเพิ่มเติมที่ documentation ของ official Medoo ตามลิ้งด้านล่างนี้นะครับ http://medoo.in/doc ถือว่าครบถ้วนระดับนึง ตอนนี้ผมก็เริ่มทดลองเอาไปสร้างเว็บไซด์ดูเล่นๆก่อน ถ้ามีจุดไหนบกพร่อง ผมจะมาอัพเดตข้อเสียเพิ่มเติมให้ก็แล้วกัน
สรุป เบามาก ไม่กินสเปกเครื่อง ติดต่อดาต้าเบสไว(ผมลองที่ localhost อยู่ และไม่ได้จับเวลาเปรียบเทียบกับแบบไม่ได้ใช้) แต่ถ้าเปรียบกันตามที่คนเปิดเว็บขึ้นใช้งาน ถือว่าอยู่ในเกณฑ์ดีนะครับ แถมยังใช้ JSON ซึ่งเข้าใจง่าย รู้แบบ Syntax ก็เป็นมิตร น่าใช้งานครับ [
2WeekTrain]