A-AA+then

ขอคำแนะนำเรื่องการเขียน PHP ในแบบ OOP ครับ

1,807
ผมอยากขอคำแนะนำเรื่องการเขียน PHP แบบ OOP ครับ ว่าทำแบบไหนถึงจะเข้าใจหลักการได้เร็ว
และสามารถนำมาพัฒนาต่อยอดได้ดี  หรือใครพอมีหนังสือจะแนะนำหรือเปล่าครับ  พอดีลองหาใน google แล้ว ก็ไม่ค่อยมีที่อธิบายดีๆเลยครับ
อีกอย่างเรื่องภาษาอังกฤษผมก็ไม่ค่อยแข็งแรงซะด้วย
ยังไงรบกวนช่วยแนะนำด้วยนะครับ  คือผมสนใจด้านนี้มากและอยากจะทำได้  มันน่าตื่นเต้นดีครับ 
 
ขอบคุณครับ

8 ความคิดเห็น

ผมไม่รู้ว่า จขกท เข้าใจว่า OOP คืออะไร ถ้าจะลองศึกษาดู OOP มีรายละเอียดไม่ค่อยมาก แค่เขียนให้มันเป็น class มันก็ทำงานในรูป OOP แล้ว

การศึกษามัน มีได้ 2 แบบ คือ

1.ศึกษาเพื่อใช้ในการออกแบบใช้งานเอง ก็คงต้องศึกษา เรื่อง class เป็นอันดับแรก

2.ศึกษาเพื่อใช้งาน อันนี้ก็ต้องศึกษาจากผู้ผลิตแหละครับ ภาษาไทยอาจมีน้อย เพราะคนไทยไม่ค่อยทำกัน(หรือไม่ก็ทำ แต่ อุบ) ดังนั้น ภาษาอังกฤษต้องแข็งแรงพอ แต่ไม่จำเป็นต้องถึงกับเก่งนะครับ งูๆปลาๆ ก็อ่านรู้เรื่องได้

โดยส่วนตัวผมออกแบบเป็น class เพื่อใช้งานครับเอง ถ้าอยากจะศึกษา สามารถหาได้บนเว็บครับ (GCMS) แต่คงยังไม่มีรายละเอียดมากนักหรอกครับ เพราะก็ศึกษาไปออกแบบไป ก็เลยไม่ค่อยได้เป็นบทความ
1

ขอบคุณมากครับ  สำหรับคำแนะนำ
ผมจะพยายามศึกษาครับ  ถ้าไม่เข้าใจจะมาใหม่
ขอบคุณครับ
2

อยากบอกว่า ผมก้ศึกษาเอง โดยดาว์นโหลด class จากเว็บนี้ครับ

www.phpclasses.org

อันนี้ ที่ผมทำแจกไว้

www.phpclasses.org/browse/package/5434.html

ผมก็ไม่เก่งหรอกครับ กำลังศึกษาอยู่ด้วยเหมือนกัน แล้วก้หัดเขียนไปด้วย

หนังสือของคนไทยเราส่วนมาก จะสอนแค่ Basic อยากเก่ง ต้องขยันแกะโค้ด แล้วมาฝึกเขียนใหม่ครับ

โหลดมาอ่านจากหลายๆ ที่ มีเทคนิคมากมายที่เรายังไม่รุ้ จะช่วยให้เราเก่งขึ้นครับ
3

ลองใช้คีย์เวิร์ด oop in php หาในGOOGLEดูครับ
4

ขอบคุณมากครับ
5

ขอถามเพิ่มครับ  จากตัวอย่าง

<?php
include( 'b.function.php' );
echo b::html2txt( $ret );
?>


เครื่องหมาย :: นี่คืออะไร  มีไว้ใช้ทำอะไรหรือครับ
ช่วยอธิบายทีครับ
6

การเรียกใช้ class ที 2 แบบ ครับ

1. เรียกโดยใช้ new เช่น

var $db = new tdb();
$db->get();

2 เรียโดยใช้ :: เป็นการเรียกโดยไม่ต้องใช้ new ครับ จะใช้เมื่อไรก็เรียกใช้ได้เลย เช่น

tdb::get();

ทั้ง 2 วิธีมีวัตถุประสงค์ต่างกันครับคือ วิธีที่ 1 เป็นการเขียนแบบ OOP (ความคิดเห็นส่วนตัวเพื่อให้เข้าใจง่าย) ได้ผลลัพท์เป็น object ของ class ที่เรยกใช้

ส่วนวิธีที่ 2 มีวัตถุประสงค์หลักเพื่อเป็น libraly ครับ หรือเรียกง่ายๆ เพื่อเป็นฟังก์ชั่นใช้งานเท่านั้นครับ
7

อ่อ
ขอบคุณมากครับที่ให้ความกระจ่าง
8
^