• No results found

OOP in PHP part-1

N/A
N/A
Protected

Academic year: 2021

Share "OOP in PHP part-1"

Copied!
20
0
0

Loading.... (view fulltext now)

Full text

(1)

OOP in PHP ตอนท

OOP in PHP ตอนท  11

สวสด

สวสดครบ ในบทความนเราจะกลาวถงการนครบ ในบทความนเราจะกลาวถงการนาเอาภาษาโปรแกรมาเอาภาษาโปรแกรม PHPPHPมาเขยนในร#ปแบบของมาเขยนในร#ปแบบของ Object OrientedObject Oriented Programming Programming โดยในบทความนเราจะไมกลาวถงพ&นฐานของภาษา PHPมากนก โดยบทความนจะเหมาะกบผ#, โดยในบทความนเราจะไมกลาวถงพ&นฐานของภาษา PHPมากนก โดยบทความนจะเหมาะกบผ#,ท-ท-เขยนและใช,ภาษาโปรแกรม PHPมาบ,างแล,ว โดยถ,าใช,อย#ในระดบการใช, Functionมากอนนาจะชวยทาให,เข,าใจ เขยนและใช,ภาษาโปรแกรม PHPมาบ,างแล,ว โดยถ,าใช,อย#ในระดบการใช, Functionมากอนนาจะชวยทาให,เข,าใจ และท และทาให,าให,เห6เห6นภาพได,นภาพได,มากขมากข  นครนครบบ

มาสร

มาสรางโลกน

างโลกนอยๆในการเข

อยๆในการเขยนโปรแกรมก*

ยนโปรแกรมก*นด

นดกว-

กว-าา

กอนอ&-นเราต,องปรบความค8ดในการเขยน PHPจากการเขยนแบบลาดบขนจากบนลงลาง (Structuralหร&อ กอนอ&-นเราต,องปรบความค8ดในการเขยน PHPจากการเขยนแบบลาดบขนจากบนลงลาง (Structuralหร&อ ProceduralProgramming)มาเปC

ProceduralProgramming)มาเปCนการเขนการเขยนแบบเช8ยนแบบเช8งวงวตถDตถD (ObjectOrientedProgramming)เส(ObjectOrientedProgramming)เสยกยกอนอน  โดยการเขยนโปรแกรมเช8งวตถD

 โดยการเขยนโปรแกรมเช8งวตถD นนน น เปCนการเขยนโปรแกรมให,เปCนการเขยนโปรแกรมให,เข,าใกเข,าใกล,การดาเน8นไปตามสภาพแวดล,อมท-เปCนจล,การดาเน8นไปตามสภาพแวดล,อมท-เปCนจร8งร8ง ของโลกเรา กลาวค&อ เรามองทDกอยางในการเข

ของโลกเรา กลาวค&อ เรามองทDกอยางในการเขยนโปรแกรมเปCยนโปรแกรมเปCนด-งการดารงอย#ของส8-งตนด-งการดารงอย#ของส8-งตาง ๆ บนโลกนาง ๆ บนโลกนนนเอง โดยทDกนนเอง โดยทDก ๆ

ส8-ๆ ส8-งบนโลกนงบนโลกนมกเก8ดจากแมแบบ (มกเก8ดจากแมแบบ (ClassClass)แทบทงส8น ซ-งแมแบบเหลาน)แทบทงส8น ซ-งแมแบบเหลานนนจะมนนจะมส8-งทส8-งท - -จาเปCนอย# 2สวนค&อ คDณสมบจาเปCนอย# 2สวนค&อ คDณสมบต8ต8 ((PropertiesProperties)และแบบแผนพฤต8กรรม ()และแบบแผนพฤต8กรรม (MethodMethod BehaviBehavior or หร7อMethodหร7อMethod)อาจจะมความเหม&อนหร&อตางกนทงใน)อาจจะมความเหม&อนหร&อตางกนทงใน คDคDณสมบณสมบต8ต8และพฤต8และพฤต8กรรม โดยผลของแบบแผนพฤต8กรรม โดยผลของแบบแผนพฤต8กรรมนกรรมนนจะได,นจะได,รบเปCรบเปCนแบบใด ขนแบบใด ข นอย# นอย#  กบคDกบคDณสมบณสมบต8ในชวงเวลานต8ในชวงเวลานน น ๆๆ ซซ - -งจะอธ8งจะอธ8บายให,บายให,เห6เห6นภาพชนภาพชดเจนได,ดเจนได,งงายขายข  นดนดงตงตวอยวอยางด,างด,านลานลางาง

ผ#ผ# ,เขยนจะขอยกตวอยางท- ,เขยนจะขอยกตวอยางท-งายกอน โดยอยากให,มองถงคาวางายกอน โดยอยากให,มองถงคาวา “มน9ษย;”“มน9ษย;” เปCนแมแบบ ทDก ๆ คนบนโลกนเก8ดจากเปCนแมแบบ ทDก ๆ คนบนโลกนเก8ดจาก แม

แมแบบ (lass)“มนDแบบ (lass)“มนDษยQษยQ” ซ” ซ - -งวงวตถDตถD ((ObjectObject)ท)ท - -เก8เก8ดจากแมดจากแมแบบ โดยคDแบบ โดยคDณสมบณสมบต8ต8 (Properties)ก6(Properties)ก6จะช&จะช& - -อเรอเรยกแตกตยกแตกตางกางกนไปนไป มมความส#ความส#งนงน  าหนาหนกเพศ และสกเพศ และสวนประกอบทางรวนประกอบทางรางกายทางกายท - -แตกตแตกตางกน ซางกน ซงส8งส8 - -งเหลงเหลานาน  ค&ค&อคDอคDณสมบณสมบต8ต8 (Properties)ของ มนD(Properties)ของ มนD ษยQ

ษยQ” ” โดยจะมพฤต8กรรม โดยจะมพฤต8กรรม (Metho(Method)ทd)ท - -เหม&อน ๆ กนโดยพ&เหม&อน ๆ กนโดยพ& นฐานของ มนDษยQ” ซ นฐานของ มนDษยQ” ซ -งได,แก การก8นนอนหลบว8 -งได,แก การก8นนอนหลบว8 -งและเด8น -งและเด8น สองขา ฯลฯ ซ

สองขา ฯลฯ ซ - -งถ&งถ&อเปCอเปCนพฎต8นพฎต8กรรมพ&กรรมพ&  นฐานของแมนฐานของแมแบบนแบบน   ถ,ถ,าเราเขาเราเขยนเปCยนเปCนภาพให,นภาพให,เห6เห6นชนชดเจนขดเจนข  นก6นก6จะได,จะได,ดดงร#งร#ปนปน  

ภาพแสดงแม

(2)
(3)

จากร#ปเราจะเห6นวา 

จากร#ปเราจะเห6นวา Obj1Obj1และ และ Obj2Obj2นน นม นมร#ปแบบพฤต8กรรมและคDณสมบร#ปแบบพฤต8กรรมและคDณสมบต8เหม&อนกนแมแบบต8เหม&อนกนแมแบบ มน9ษย;มน9ษย; แตแต คDณสมบ

คDณสมบต8ของทงสองวตถDต8ของทงสองวตถDนนได,ถ#นนได,ถ#กกาหนดตอมาให,กกาหนดตอมาให,แตกตางกแตกตางกน น ทาให,ผลของพฤต8กรรมนทาให,ผลของพฤต8กรรมน นแตกตางกนไปตามข,อม#ล นแตกตางกนไปตามข,อม#ล ของคDณสมบ

ของคDณสมบต8ต8ท-เปล-ยนแปลงไป เชน Obj1นท-เปล-ยนแปลงไป เชน Obj1น นมความส#ง 1ซม.นาหนก 4กก.และเปCนเพศหญ8ง ซ-งม นมความส#ง 1ซม.นาหนก 4กก.และเปCนเพศหญ8ง ซ-งม คDณสมบ

คDณสมบต8แตกตางกบ Obj2ทต8แตกตางกบ Obj2ท - -มความส#ง 179ซม.นมความส#ง 179ซม.น าหนก 5กก.และเปC าหนก 5กก.และเปCนเพศชาย กลาวค&อในสภาวะเปCนจร8งแล,วนเพศชาย กลาวค&อในสภาวะเปCนจร8งแล,ว ความแตกต-างของท*?งของว*ตถ9

ความแตกต-างของท*?งของว*ตถ9ท*?งสองน*?นถAกกาหนดจากค9ณสมบ*ท*?งสองน*?นถAกกาหนดจากค9ณสมบ*ตFซงทาใหการผลของพฤตFกรรมน*?นแตกตFซงทาใหการผลของพฤตFกรรมน*?นแตก ต-ต-างก*างก*นแมนแมจะเกFจะเกFดจากแม-ดจากแม-แบบเดแบบเดยวก*ยวก*บกบกตามตาม

สร9

สร9ปว-ปว-าาแมแมแบบ (lass)มแบบ (lass)มความเปCความเปCนนนามธรรม(bstract)นามธรรม(bstract)และวและวตถDตถD (Object)ม(Object)มความเปCความเปCนนรAรAปธรรม(Concrete)ปธรรม(Concrete)  โดยคDณสมบ  โดยคDณสมบต8ต8ตาง ๆ ของวตถDตาง ๆ ของวตถDนนต,องมการหอหD,มอย#ภายใน (นนต,องมการหอหD,มอย#ภายใน (EncapsulationEncapsulation )ซ)ซ -งทาให, -งทาให,คDณสมบคDณสมบต8ของข,อม#ลนนต8ของข,อม#ลนน ถ#กต,องเสมอ โดยจากตวอยางท-แล,วนนในกรณของคDณสมบ ถ#กต,องเสมอ โดยจากตวอยางท-แล,วนนในกรณของคDณสมบต8ของเพต8ของเพศนศนน จะต,องอย#น จะต,องอย#ภายใต,ภายใต,เง&-อนไขของเพศชาย แลเง&-อนไขของเพศชาย และะ หญ8 หญ8งเทานน จงจาเปCนต,องมงเทานน จงจาเปCนต,องมตวควบคDมคDณสมบตวควบคDมคDณสมบต8 หร&ต8 หร&อแบบแผนพฤต8กรรมเข,ามาเก-ยวข,อแบบแผนพฤต8กรรมเข,ามาเก-ยวข,องซ-งจะได,กองซ-งจะได,กลาวตอไป ลาวตอไป โดยโดย ความถ#กต,องของข,อม# ความถ#กต,องของข,อม#ลภายในนนสาคญมาก เพราะน-นหมายถงการแสดงคDณสมบลภายในนนสาคญมาก เพราะน-นหมายถงการแสดงคDณสมบต8ต8ท-ท-ถ#กต,องของวตถDถ#กต,องของวตถDนนๆ ด,วย รวมนนๆ ด,วย รวม ถงถ, ถงถ,าเรามองในด,านการเขยนโปรแกรมแล,ว าเรามองในด,านการเขยนโปรแกรมแล,ว การหการหอหD,มภายในนนชวยให,การด#แลรกษาและพฒนาชDดคาส-งนนทาได,อหD,มภายในนนชวยให,การด#แลรกษาและพฒนาชDดคาส-งนนทาได, งายข งายขน เพราะชDดคาส-น เพราะชDดคาส-งได,งได,ถ#กแยกออกเปCนสวน ๆ ถ#กแยกออกเปCนสวน ๆ และยและยงบอกถงพฤต8กรรมของส8-งท-งบอกถงพฤต8กรรมของส8-งท-หอหD,มด,วยวาควรเปCนพฤต8กรรมหอหD,มด,วยวาควรเปCนพฤต8กรรม อะไร และเม& อะไร และเม& - -อเราพบพฤต8อเราพบพฤต8กรรมนกรรมน  น ๆ แล,น ๆ แล,วผลของพฤต8วผลของพฤต8กรรมนกรรมน  นจะให,นจะให,ข,ข,อม#อม#ลและผลการทลและผลการทางานออกมาเปCางานออกมาเปCนอะไรด,นอะไรด,วยวย ภาพแสดงการห ภาพแสดงการหอหDอหD , ,มภายในคDมภายในคDณสมบณสมบต8ต8 คDณสมบ

คDณสมบต8ต8ท-ท-ทาให,ทาให,การเขยนโปรแกรมเช8งวตถDการเขยนโปรแกรมเช8งวตถDนนได,นนได,รบความน8รบความน8ยมมาก ค&อการส&บทอด (ยมมาก ค&อการส&บทอด (InheritanceInheritance)ของแมแบบ)ของแมแบบ (lass)ท

(lass)ท - -ททาให,าให,ล#กแบบ (ล#กแบบ (SubClassSubClass)น)น  นมความเฉพาะเจาะจงมากขนไปอกไปอก นมความเฉพาะเจาะจงมากขนไปอกไปอก และยและยงชวยให,การสร,งชวยให,การสร,างสรรคQงานางสรรคQงาน นน นทาได, นทาได,งายเพราะเราไมงายเพราะเราไมจาเปCนต,องเขยนโปรแกรมหลาย ๆ อยางซา ๆ กนในแมแบบท-จาเปCนต,องเขยนโปรแกรมหลาย ๆ อยางซา ๆ กนในแมแบบท-มมคDณสมบคDณสมบต8เหม&อน ๆ กนต8เหม&อน ๆ กน เชนแมแบบ ยานพาหนะ” ม เชนแมแบบ ยานพาหนะ” มล#กแบบ ช&-อได,แก รถยนตQรถจกรยานยนตQ และจกรยาน เปCนต,น ซ-งทง 3ล#กแบบท-ล#กแบบ ช&-อได,แก รถยนตQรถจกรยานยนตQ และจกรยาน เปCนต,น ซ-งทง 3ล#กแบบท-กลาวมานนม กลาวมานนมคDณสมบคDณสมบต8บางอยางท-เหม&อนกนจนได,เปCนยานพาหนะ เชนความส#งความกว,าง และความเร6วในการต8บางอยางท-เหม&อนกนจนได,เปCนยานพาหนะ เชนความส#งความกว,าง และความเร6วในการ เคล& เคล& -อนท- -อนท-เปCเปCนต,น ซนต,น ซ -งการแบ -งการแบงเปCนล#กแบบนงเปCนล#กแบบน  ทาให,ทาให,ความเฉพาะเจาะจงของล#กแบบมมากขนทความเฉพาะเจาะจงของล#กแบบมมากขนท าให,าให,การสร,างวตถDการสร,างวตถD ใด ๆ จาก ใด ๆ จาก ล#กแบบเหลาน ล#กแบบเหลาน  นนนมนมคDณสมบคDณสมบต8ต8ท-เท-ยงตรงตอการแสดงพฤต8กรรมได,มากขนด,วย และลดการซบซ,อนของโครงสร,างแมท-เท-ยงตรงตอการแสดงพฤต8กรรมได,มากขนด,วย และลดการซบซ,อนของโครงสร,างแม แบบลงได, แบบลงได,มาก เพราะได,มาก เพราะได,ถ#ถ#กกกกาหนดคDาหนดคDณสมบณสมบต8ต8หลหลก ๆ ไว,ก ๆ ไว,แล,แล,วในแมวในแมแบบ ทแบบ ทาให,าให,ล#กแบบมล#กแบบมความซความซบซ,บซ,อนน,อนน,อยลงอยลง การส&

(4)
(5)

 ในการส

 ในการสงข,อม#ลระหวางวตถDงข,อม#ลระหวางวตถDนนเราเรยกวาการสงข,อความ (Messaging)ซนนเราเรยกวาการสงข,อความ (Messaging)ซ -งข,อความ (Message)น -งข,อความ (Message)น  นจะถ#กสงผานนจะถ#กสงผาน แบบแผนพฤต8กรรม

แบบแผนพฤต8กรรม (Meth(Method)เพ&-อตรวจสอบความถod)เพ&-อตรวจสอบความถ#กต,#กต,องของข,องของข,อความท-อความท-จะเข,าหร&จะเข,าหร&อออกจากวตถD (Object)กอออกจากวตถD (Object)กอนท-จะอนท-จะ ทาการประมวลข,อความนนเพ&-อแก,ไขข,อม#ลหร&อคDณสมบ

ทาการประมวลข,อความนนเพ&-อแก,ไขข,อม#ลหร&อคDณสมบต8 ต8 (Prop(Propertieerties)ภายในวs)ภายในวตถD ซ-งกตถD ซ-งการตรวจสารตรวจสอบนอบนเปCนไปตาเปCนไปตามม หลกการหอหD หลกการหอหD ,มข, ,มข,อม#ลภายใน เพ&อม#ลภายใน เพ& -อปองกนไม -อปองกนไม ให, ให,วตถDวตถDทางานผ8ดไปจากพฤต8กรรมท-ทางานผ8ดไปจากพฤต8กรรมท-กาหนด โดยขอยกตวอยาง ทกาหนด โดยขอยกตวอยาง ท -เข,าใกล, -เข,าใกล, กกบชบชว8ว8ตประจาวน โดยเรามนาย ก.และนาย ข.ซตประจาวน โดยเรามนาย ก.และนาย ข.ซ - -งเก8ดจากแมแบบ มนDษยQ ซ-งนาย ก.ได,งเก8ดจากแมแบบ มนDษยQ ซ-งนาย ก.ได,ทาการถาม อายDนาย ข.โดยทาการถาม อายDนาย ข.โดย ทท -นาย ข.น -นาย ข.น นจะตอบอายDกลบไปก6ได,หร&อไม ขนอย# นจะตอบอายDกลบไปก6ได,หร&อไม ขนอย#กบคDณสมบกบคDณสมบต8บางประการของวตถDต8บางประการของวตถDนน ๆ เชนเพศ เปCนต,น โดยท-นน ๆ เชนเพศ เปCนต,น โดยท-นายข. เปXนเพศชาย นายข. เปXนเพศชาย อาจจะตอบกลบไปในทนทอาจจะตอบกลบไปในทนท แต-ในกรณแต-ในกรณทเปXนเพศหญFงทเปXนเพศหญFงอาจจะไมอาจจะไมตอบกลบข,อความนกลบไปตอบกลบข,อความนกลบไป ซซ - -งจากตวอยงจากตวอยางดางดงกลาวจะเห6นได,งกลาวจะเห6นได,วาการสงข,อความไป และกลวาการสงข,อความไป และกลบนบน  นจะได,ผลตอบรบอยนจะได,ผลตอบรบอยางไรนน ขางไรนน ข นอย# นอย#  กกบคDณสมบบคDณสมบต8 ณ.ต8 ณ. เวลาใดเวลาหน-เวลาใดเวลาหน-งของวตถDในเวลานงของวตถDในเวลานน ๆ และวตถDน ๆ และวตถDแตแตละวละวตถDตถDนน  นจะมนจะมความเปCนอ8ความเปCนอ8สระกสระกนของคDณสมบนของคDณสมบต8 เต8 เหม&อนดหม&อนดงตงตวอยางวอยาง ทท - - นาย ก.และนาย ข.ไมนาย ก.และนาย ข.ไม ได, ได,เปCเปCนคนเดนคนเดยวกยวกนนนน  นเองนเอง  โดยยงม  โดยยงมคDณสมบคDณสมบต8การกระทต8การกระทาหลายร#ปแบบ าหลายร#ปแบบ ((PolymorphismPolymorphism)ซ)ซ -งจะไมขอผ#, -งจะไมขอผ#,ถงในตอนน เพราะอาจทาถงในตอนน เพราะอาจทาให,งงได, ให,งงได, ผ#,ผ#, เข เขยนจะขอพ#ยนจะขอพ#ดถดถงในระดงในระดบทบท - -ส#ส#งตงตอไปอไป จากท-เราได, จากท-เราได,ศกษาจากข,อม#ลด,านบนนนเราได,สรDปสวนท-ศกษาจากข,อม#ลด,านบนนนเราได,สรDปสวนท-สาคญในการพฒนาของ ObjectOrientedProgrammingสาคญในการพฒนาของ ObjectOrientedProgramming  ไว,  ไว,ดดงตงตอไปนอไปน   ● ●

แม

แมแบบ (lass)

แบบ (lass)

● ●

ล#ล#กแบบ (Sublass)

กแบบ (Sublass)

● ●

ววตถD

ตถD (Object)

(Object)

● ●

การส

การสงข,

งข,อความ (Messaging)

อความ (Messaging)

● ●

ข,ข,อความ (Message)

อความ (Message)

● ●

การห

การหอหD

อหD , ,มข,

มข,อม#ล(Encapsulation)

อม#ล(Encapsulation)

การส&

การส&บทอด (Inheritance)

บทอด (Inheritance)

● ●

การท

การทาหลายร#

าหลายร#ปแบบ (Polymorphism)

ปแบบ (Polymorphism)

● ●

คDคDณสมบ

ณสมบต8 (Properties)

ต8 (Properties)

● ●

แบบแผนพฤต8

แบบแผนพฤต8กรรม (MethodBehavior)

กรรม (MethodBehavior)

“สว*

“สว*สด

สดชาวโลก”ก*

ชาวโลก”ก*บPHP บนโลกแห-

บPHP บนโลกแห-งความจรF

งความจรFงง

 ในบทความนทางผ#,เขยนจะอ,างอ8งกบ PHPVersion4กอน เพราะม  ในบทความนทางผ#,เขยนจะอ,างอ8งกบ PHPVersion4กอน เพราะมข,อกาหนดท-ไมข,อกาหนดท-ไมยDงยาก และเหมาะแกการนามาศกษายDงยาก และเหมาะแกการนามาศกษา มากกว มากกวา PHPVersion5า PHPVersion5  โดยในการเขยนแบบโปรแกรมเช8งว  โดยในการเขยนแบบโปรแกรมเช8งวตถDใน ตถDใน PHPนPHPน นไมยาก โดยคาท-ใช,เปCนคาหลก (Keyword)ในการเขยนได,แก นไมยาก โดยคาท-ใช,เปCนคาหลก (Keyword)ในการเขยนได,แก class, function, this

class, function, this และและ parentparentเปCเปCนต,นต,นน จากต

จากตวอยวอยางในชางในชวงแรกผ#วงแรกผ# , ,เขเขยนจะสร,ยนจะสร,าง แมาง แมแบบ (lass)แบบ (lass)humanhumanขข  นมากนมากอน โดยว8อน โดยว8ธธการสร,การสร,างแมางแมแบบใน PHPมแบบใน PHPมดดงนงน  

<? <? php php class

class classnameclassname {{ } } ?> ?> ร#ร#ปแบบคปแบบคาส-าส-งทงท - - 11 1.ค

1.คาหลาหลกทกท - -เราจะใช,เราจะใช,นน  นค&นค&ออ classclass

2.หล

2.หลงคงคาหลาหลกก classclass ตามด,ตามด,วยช&วยช& - -อแมอแมแบบ (แบบ (classnameclassname))

3.เป

3.เปดและปดและปดด,ดด,วยเคร&วยเคร& - -องหมายปองหมายปกกา เพ&กกา เพ& - -อกอกาหนดชาหนดชวงวง การเข

(6)
(7)

เม&-เม&-อเราร#อเราร# , ,ร#ร#ปแบบการสร,ปแบบการสร,างแมางแมแบบแล,แบบแล,ว เราจะมาสร,ว เราจะมาสร,างแมางแมแบบเพ&แบบเพ& - -อใช,อใช,งานจร8งานจร8งกงกนเลยนเลย

<? <? php php class

class humanhuman {{ } } ?> ?> ชDชDดคดคาสาส - -งทงท - - 11 จากชD

จากชDดคดคาสาส - -ง (ง (Source CodeSource Code)ท)ท - - 1น1น  เปCเปCนเพนเพยงการประกาศแมแบบเทยงการประกาศแมแบบเทานาน  น ซน ซ - -งไมงไมสามารถทสามารถทางานได,างานได,

<? <? php php class

class humanhuman {{ function

function TalkTalk(){(){ echo

echo “Hello World”;“Hello World”; } } } } ?> ?> ชDชDดคดคาสาส - -งทงท - - 22 ทาให,เก8 ทาให,เก8ดชDดชDดคาสดคาส-งท- -งท- 2ซ-งเราได,2ซ-งเราได,เพ8-มพฤต8กรรม เพ8-มพฤต8กรรม (Metho(Method)ลงไป d)ลงไป โดยผมขอยกตโดยผมขอยกตวอยางวาให,วอยางวาให,วตถDใด ๆ ท-สร,างจากวตถDใด ๆ ท-สร,างจาก แมแบบ humanน

แมแบบ humanน นสามารถพ8มพQ นสามารถพ8มพQคาวา คาวา HelloWorHelloWorldออกมาได,โดยใช,ldออกมาได,โดยใช,ผานพฤต8กรรมท-ผานพฤต8กรรมท-ช&-อวา ช&-อวา TalkมาเปCนหTalkมาเปCนหวข,อวข,อ ตตวอยาง โดยการเขยนพฤต8กรรมในแมแบบนนก6เขยนร#ปแบบเดยวกบฟxงกQวอยาง โดยการเขยนพฤต8กรรมในแมแบบนนก6เขยนร#ปแบบเดยวกบฟxงกQชชนทนท-ว -ว ๆ ไๆ ไปท-เราคD,นเคยกนใน PHPแบบปท-เราคD,นเคยกนใน PHPแบบ เด8ม ๆ น-นเอง โดยใช,

เด8ม ๆ น-นเอง โดยใช,คาหลกค&อคาหลกค&อ functionfunction และตามด,วยช&และตามด,วยช& -อพฤต8กรรม ซ-งการประกาศ  -อพฤต8กรรม ซ-งการประกาศ functifunctionในแมonในแมแบบนแบบนก6เหม&อนก6เหม&อน

กบ functionโดยท-วไปนนเอง โดยจากตวอยางชDดคาส-งท- 2น

กบ functionโดยท-วไปนนเอง โดยจากตวอยางชDดคาส-งท- 2น เราจะสร,างวตถDจากแมแบบท- เราจะสร,างวตถDจากแมแบบท- เขยนขนมาทางาน โดยเขยนขนมาทางาน โดย  ใช,

 ใช,คคาหลกาหลก new new  โดยร# โดยร#ปแบบการสร,ปแบบการสร,างวางวตถDตถDขข  นมานนมาน  นมนมดดงนงน  

$objectname

$objectname == new new  classname();classname();

ร#ร#ปแบบคปแบบคาส-าส-งทงท - - 22 จากร#ปแบบคาส-งท- 2น

จากร#ปแบบคาส-งท- 2น จะเห6นร#ปแบบการสร,างวตถDโดยท- จะเห6นร#ปแบบการสร,างวตถDโดยท- $objectname$objectnameนน เปC เปCนช&-นช&-อของอของช7ช7 ออางอFงว*ตถ9 ออางอFงว*ตถ9 หร&อเรยกหร&อเรยก

วา วาต*วแปรอางอFงต*วแปรอางอFงก6ได, โดยท-ก6ได, โดยท-ตวแปรนจะไปอ,างอ8งกบวตถDตวแปรนจะไปอ,างอ8งกบวตถDท-เราสร,างขนในหนวยความจาอกท โดยหลกการตงช&-อตวท-เราสร,างขนในหนวยความจาอกท โดยหลกการตงช&-อตว แปรอ, แปรอ,างอ8างอ8งกงกบวบวตถDตถDนน  นจะเหม&นจะเหม&อนกอนกบตวแปรทบตวแปรท - -วไปทDวไปทDกประการกประการ <?php <?php class

class humanhuman {{ function

function TalkTalk(){(){ echo

echo “Hello World”;“Hello World”; }

} }

}

$somsak =

$somsak = newnew human();human(); $somsak->Talk(); $somsak->Talk(); ?> ?> ชDชDดคดคาสาส - -งทงท - - 33  โดยจากชDดคาส-งท

 โดยจากชDดคาส-งท - 3 เราจะได, - 3 เราจะได,วตถDวตถDท-ท-มมตวแปรอ,างอ8งทตวแปรอ,างอ8งท - -ช&-อวา ช&-อวา somsaksomsakเม&-เม&-อเรามาด#อเรามาด#ตวอยางความสมพนธQตวอยางความสมพนธQระหวระหวางาง แม

(8)
(9)

ภาพแสดงความส

ภาพแสดงความสมพมพนธQนธQทท - - 11 จากภาพแสดงความสมพนธQ

จากภาพแสดงความสมพนธQท- 1นท- 1น จะเห6นวาม จะเห6นวามวตถDอย# 1วตถDอย#ในหนวยความจวตถDอย# 1วตถDอย#ในหนวยความจาโดยมาโดยมตวแปรอ,างอ8งกบวตถDตวแปรอ,างอ8งกบวตถDนนช&-อช&-อ วา somsakอกท

โดยท-วา somsakอกท โดยท-วตถDวตถDนเก8ดจากแมแบบ humanนนเก8ดจากแมแบบ humanน นเอง ซ-งจากชDดคาส-งส-งดงกลาวนนก6  นเอง ซ-งจากชDดคาส-งส-งดงกลาวนนก6มการให,มการให,พ8มพQพ8มพQคาวาคาวา HelloWorld ออกมา ด HelloWorld ออกมา ดง ผลดง ผลดงผลการทงผลการทางานของชDางานของชDดคดคาสาส - -งท- 3งท- 3 Hello World Hello World ผลการท ผลการทางานของชDางานของชDดคดคาสาส - -งทงท - 3 - 3  โดยเราจะส

 โดยเราจะสงเกตเห6นเคร&-องหมายงเกตเห6นเคร&-องหมายอางอFงอางอFง -> -> ((Reference/rrow Operator Reference/rrow Operator )ซ)ซ -งเปCนการช -งเปCนการช ไปย ไปยงคDณสมบงคDณสมบต8ภายในต8ภายใน

หร&อเรยกใช,พฤต8กรรมใด ๆ ในวตถD

หร&อเรยกใช,พฤต8กรรมใด ๆ ในวตถDนนน ๆ น ๆ โดยด#ได,จากชDโดยด#ได,จากชDดคาสดคาส-งท- -งท- 3ท3ท - -ตตวแปรอ,างอ8งวตวแปรอ,างอ8งวตถD ถD somsomsakเsakเพ&-อเรยพ&-อเรยกใช,กใช, พฤต8กรรม

พฤต8กรรม TalkTalkขข นมาน- นมาน-นเองซ-งจากชDดคาส-งท- 3นนเองซ-งจากชDดคาส-งท- 3น เราจะมาวาดภาพเปCนแมแบบ และวตถD เราจะมาวาดภาพเปCนแมแบบ และวตถDกน เพ&-อให,เราจะได,เช&-อมกน เพ&-อให,เราจะได,เช&-อม  โยงความค8  โยงความค8ดระหวดระหวางชDางชDดคดคาสาส - -งและแนวค8งและแนวค8ดการเขดการเขยนโปรแกรมเช8ยนโปรแกรมเช8งวงวตถDตถD ภาพแสดงความส ภาพแสดงความสมพมพนธQนธQทท - - 22  โดยจากภาพแสดงความสมพนธQ  โดยจากภาพแสดงความสมพนธQท- 2นท- 2น เปรยบเทยบกบชDดคาส-งท- 3น เปรยบเทยบกบชDดคาส-งท- 3น นเราจะเห6นวาตวแปรอ,างอ8งวตถD somsak นเราจะเห6นวาตวแปรอ,างอ8งวตถD somsak นน นไปอ,างอ8งกบวตถD นไปอ,างอ8งกบวตถDท-เก8ดจากแมแบบ humanซท-เก8ดจากแมแบบ humanซ  -งและเม&-อเก8ดขนมาแล,วนน ตวแปรอ,างอ8งวตถD  -งและเม&-อเก8ดขนมาแล,วนน ตวแปรอ,างอ8งวตถDก6ก6ทาการส-งเรยกใช,ทาการส-งเรยกใช, พฤต8กรรม Talkโดยภาพน

พฤต8กรรม Talkโดยภาพนจะเห6นวาวตถDจะเห6นวาวตถDท-ท-ตตวแปรอ,างอ8ง somsakไปอ,วแปรอ,างอ8ง somsakไปอ,างอ8งอย#างอ8งอย#  และได,  และได,ส-งให,ส-งให,พฤต8กรรม Talkทางานพฤต8กรรม Talkทางาน ขข  นโดยพ8นโดยพ8มพQมพQคคาวา HelloWorldออกมาาวา HelloWorldออกมา

มาเรF

มาเรF  มเข

มเขยนต*

ยนต*วละครฉบ*

วละครฉบ*บPHP ก*

บPHP ก*นด

นดกว-

กว-าา

จากชDดคาส-งท จากชDดคาส-งท - 13และภาพแสดงความสมพนธQ - 13และภาพแสดงความสมพนธQททงสองร#งสองร#ปท-ได,แสดงไปแล,ปท-ได,แสดงไปแล,วนวนน จะเห6นได,น จะเห6นได,วาเม&-วาเม&-อเราเขยนโปรแกรมอเราเขยนโปรแกรม แบบเช8งวตถD แบบเช8งวตถDก6เหม&อนกบเราเขยนบทละครให,แตละวตถDก6เหม&อนกบเราเขยนบทละครให,แตละวตถDทาส8-งใด ทาส8-งใด ๆ ก6ตๆ ก6ตามท-เราต,ามท-เราต,องการ องการ โดยกาหนดตโดยกาหนดตวแปรอ,างวแปรอ,างอ8งอ8ง หร&

หร&อความหมายหน-อความหมายหน-งก6งก6ค&อการสร,างช&ค&อการสร,างช& - -อนอนกแสดงอกแสดงอกทกทหน-หน-งเพ&งเพ& -อง -องายตอการจายตอการจดการคDดการคDณสมบณสมบต8ต8และแสดงพฤต8กรรมให,และแสดงพฤต8กรรมให,ตรงกบตรงกบ วตถD

วตถDนน ๆ โดยตวอยางท-ได,กลาวไปนนอาจจะยงไมเห6นภาพมากนก เรามาด#นน ๆ โดยตวอยางท-ได,กลาวไปนนอาจจะยงไมเห6นภาพมากนก เรามาด#ตอวาเม&-อแมแบบนนมการกาหนดตอวาเม&-อแมแบบนนมการกาหนด คDณสมบ

คDณสมบต8เพ8ต8เพ8 - -มเข,ามาจะทาให,ผลของพฤต8กรรมเปล-มเข,ามาจะทาให,ผลของพฤต8กรรมเปล-ยนไปและแตกตางกยนไปและแตกตางกน น ซ-งเราจะมาด#ซ-งเราจะมาด#ววาทาให,เก8าทาให,เก8ดความแตกตางกนดความแตกตางกน  ได,อยางไร โดยเรากาหนดคDณสมบ

 ได,อยางไร โดยเรากาหนดคDณสมบต8และพต8และพฤต8กรรมดฤต8กรรมดงตอไปนงตอไปน  ช&-อแมแบบค&อช&-อแมแบบค&อ humanhumanโดยท-แมแบบ humanมโดยท-แมแบบ humanม ค9ณสมบ*

ค9ณสมบ*ตF(Properties)ตF(Properties)ค&อค&อช7อ, ความสAง, น?ช7อ, ความสAง, น?  าหน*ก, อาย9และเพศ  าหน*ก, อาย9และเพศ และมและมพฤตFกรรม(Method)พฤตFกรรม(Method) ค&อค&อ บอกช7อ,บอกช7อ, บอกความสA

(10)
(11)

เม&-เม&-อได,อได,ร#ร#ปแบบทปแบบท - -ต,ต,องการแล,องการแล,วเราก6วเราก6จะมาเขจะมาเขยนชDยนชDดคดคาสาส - -งกงกนเลยนเลย

<? <? php php class

class human {human {  var

 var $name = “human”;// default name = “human”$name = “human”;// default name = “human”  var

 var $sex $sex = = 1; 1; // // default default = = 1 1 and and 1 1 = = male, male, 2 2 = = femalefemale  var

 var $height $height = = 0; 0; // // height height > > 00  var

 var $weight $weight = = 0; 0; // // weight weight > > 00  var

 var $age $age = = 0; 0; // // age age > > 00 function

function showName(){showName(){ return

return $this->name;$this->name; }

}

function

function showSex(){showSex(){ return

return $this->sex;$this->sex; }

}

function

function showHeight(){showHeight(){ return

return $this->height;$this->height; }

}

function

function showWeight(){showWeight(){ return

return ($this->sex == 2 ? 'No Answer' : ($this->sex == 2 ? 'No Answer' : $this->weight);$this->weight); }

}

function

function showAge(){showAge(){ return

return ($this->sex == 2 ? 'No Answer' : ($this->sex == 2 ? 'No Answer' : $this->age);$this->age); } } } } ?> ?> ชDชDดคดคาสาส - -งทงท - - 44 จากชDดคาส-งท- 4น

จากชDดคาส-งท- 4น  เราได,พบคาหลกอกคาค&อ  เราได,พบคาหลกอกคาค&อ var var โดยคานเปCนคาหลกท-ใช,กาหนดคDณสมบโดยคานเปCนคาหลกท-ใช,กาหนดคDณสมบต8เร8-มต,นของแมแบบต8เร8-มต,นของแมแบบ

ซซ - -งเปCน ดงเปCน ดงข,งข,อกาหนดวอกาหนดวาเม&าเม& - -อสร,างวอสร,างวตถDตถDขข  นแล,วคDนแล,วคDณสมบณสมบต8ต8ดงกลดงกลาวจะต8ดตวไปกบวาวจะต8ดตวไปกบวตถDตถDนนน ๆ ด,วย ซ-น ๆ ด,วย ซ-งคDณสมบงคDณสมบต8ต8นนนจะแยกนจะแยก อ8อ8สระออกจากวสระออกจากวตถDตถDอ&อ& - -น ๆ โดยร#น ๆ โดยร#ปแบบการเขปแบบการเขยนคDยนคDณสมบณสมบต8ต8ก6ก6ค&ค&ออ

var 

var  $propertyname;$propertyname;

ร#ร#ปแบบคปแบบคาส-าส-งทงท - - 33  โดยท-หลงคาหลก

 โดยท-หลงคาหลก var var จะตามด,วยช&-อคDณสมบต8ต8 $propertynameจะตามด,วยช&-อคDณสมบ $propertyname ซซ -งการตงช&-อคDณสมบ -งการตงช&-อคDณสมบต8ต8นนก6ใช,หลกการตงช&-อนนก6ใช,หลกการตงช&-อ

แบบเด

แบบเดยวกยวกบตบตวแปรโดยทวแปรโดยท - -วไปวไป  โดยการเรยกใช,

 โดยการเรยกใช,คDณสมบคDณสมบต8 ต8 และพฤต8กรรและพฤต8กรรมภายในแมมภายในแมแบบเดยวกแบบเดยวกนนนนนจะใช,นจะใช,ผานคาหลกท-ผานคาหลกท-ช&-อช&-อ thisthis ซซ -งเราจะทาการ -งเราจะทาการ

อ,อ,างอ8างอ8งกงกบช&บช& - -อคDอคDณสมบณสมบต8ต8หร&หร&อพฤต8อพฤต8กรรมอกรรมอกทกทหนหน - -งโดยใช,งโดยใช,เคร&เคร& - -องหมายอ,องหมายอ,างอ8างอ8งง -> -> เข,เข,ามารามารวมการทวมการทางานโดยว8างานโดยว8ธธการเขการเขยนค&ยนค&ออ $this

$this->propertyname;->propertyname; $this

$this->methodname(<->methodname(< parameter*>  parameter*> ););

ร#ร#ปแบบคปแบบคาส-าส-งทงท - - 44  โดยท- โดยท- $this$thisมมความหมายวา ความหมายวา การเช7การเช7  อมโยงค9ณสมบ*อมโยงค9ณสมบ*ตFและพฤตFกรรมของตนเองตFและพฤตFกรรมของตนเอง” ซ” ซ -งในร#ปแบบค -งในร#ปแบบคาส-งทาส-งท - 4น - 4น  ก6ก6  ได,  ได,มมตวอยางการอ,างอ8งถงพฤต8กรรม ซ-งพฤต8กรรมนเราสามารถเรยกใช,ได,เหม&อน ๆ กบฟxงกQตวอยางการอ,างอ8งถงพฤต8กรรม ซ-งพฤต8กรรมนเราสามารถเรยกใช,ได,เหม&อน ๆ กบฟxงกQชนท-วๆ ไปและรวมไปชนท-วๆ ไปและรวมไป ถถงการสงการสงพารQงพารQราม8ราม8เตอรQเตอรQตตาง ๆ เข,าง ๆ เข,าไปได,าไปได,ด,ด,วยวย จากตวชD จากตวชDดคาสดคาส -งท -งท - 4เรานามาสร, - 4เรานามาสร,างวางวตถDตถDเพ&-เพ&-อพ8อพ8สDทธ8สDทธ8 z zววาวาวตถDตถDนน  น ๆ มความเปCน ๆ มความเปCนอ8สระตนอ8สระตอกน โดยเราจะสร,างวตถDอกน โดยเราจะสร,างวตถD 2ว2วตถDตถD ทท - -มมช&-ออ,างอ8งวา somsakและ ช&-ออ,างอ8งวา somsakและ somyisomyingโดยท-ngโดยท-กาหนดให,กาหนดให,ช&-อ ช&-อ SomsakเSomsakเปCนผ#,ชาย มอายD ปCนผ#,ชาย มอายD 2ปความส#ง 17 ชม.นา2ปความส#ง 17 ชม.นา

(12)
(13)

หน

หนก 5ก 5กก.และ somyingเปCนกก.และ somyingเปCนผ#,ผ#,หญ8ง มอายD หญ8ง มอายD 25ปความส#ง 1 ชม.น25ปความส#ง 1 ชม.นาหนก 4กก.เม&-าหนก 4กก.เม&-อกาหนดเสร6จแล,อกาหนดเสร6จแล,ว เราจว เราจะะ บอกให,

บอกให,ววตถDตถDทท  งสองบอกข,งสองบอกข,อม#อม#ลของตลของตวเองผวเองผานพฤต8านพฤต8กรรมทกรรมท - - ได, ได,กกาหนดไว,าหนดไว, ในชD ในชDดคดคาสาส - -งท-งท- 4ท4ท - - ได, ได,เขเขยนไว,ยนไว,กกอนหน,อนหน,านาน   ได,ได,ดดงนงน  

$somsak =

$somsak = newnew human human ();(); $somsak->name = 'Somsak'; $somsak->name = 'Somsak'; $somsak->sex = 1; $somsak->sex = 1; $somsak->height = 178; $somsak->height = 178; $somsak->weight = 65; $somsak->weight = 65; $somsak->age = 28; $somsak->age = 28; echo

echo 'Name : 'Name : '.$somsak->showName().'.$somsak->showName().'<br />';'<br />'; echo

echo 'Sex : '.$somsak->showSex().'<br />';'Sex : '.$somsak->showSex().'<br />'; echo

echo 'Height : '.$somsak->showHeight().'<br />';'Height : '.$somsak->showHeight().'<br />'; echo

echo 'Weight : '.$somsak->showWeight().'<br />';'Weight : '.$somsak->showWeight().'<br />'; echo

echo 'Age : '.$somsak->showAge().'<br />';'Age : '.$somsak->showAge().'<br />'; $somying =

$somying = newnew human human ();(); $somying->name = 'Somying'; $somying->name = 'Somying'; $somying->sex = 2; $somying->sex = 2; $somying->height = 168; $somying->height = 168; $somying->weight = 48; $somying->weight = 48; $somying->age = 25; $somying->age = 25; echo

echo 'Name : 'Name : '.$somying->showName()'.$somying->showName().'<br />';.'<br />'; echo

echo 'Sex : '.$somying->showSex().'<br />';'Sex : '.$somying->showSex().'<br />'; echo

echo 'Height : '.$somying->showHeight().'<br />';'Height : '.$somying->showHeight().'<br />'; echo

echo 'Weight : '.$somying->showWeight().'<br />';'Weight : '.$somying->showWeight().'<br />'; echo

echo 'Age : '.$somying->showAge().'<br />';'Age : '.$somying->showAge().'<br />';

ชDชDดคดคาสาส - -งทงท - - 55 จากต จากตวอยวอยางชDางชDดคดคาสาส - -งดงดงกลงกลาวนาวนเราจะได,เราจะได,คคาตอบของผลการทาตอบของผลการทางานดางานดงตงตอไปนอไปน   Name : Somsak Name : Somsak Sex : male Sex : male Height : 178 Height : 178 Weight : 65 Weight : 65 Age : 28 Age : 28 Name : Somying Name : Somying Sex : female Sex : female Height : 168 Height : 168 Weight : No Answer Weight : No Answer Age : No Answer Age : No Answer ผลการท ผลการทางานของชDางานของชDดคดคาสาส - -งทงท - 5 - 5 จากชDดคาส

จากชDดคาส-งท- -งท- 5 และผล5 และผลการทางานนบอกเราวาวการทางานนบอกเราวาวตถDตถDท-สร,างจากแมแบบ humanนท-สร,างจากแมแบบ humanน นเม&-อถ#กกาหนดคDณสมบ นเม&-อถ#กกาหนดคDณสมบต8ต8วาวา เปC

เปCนเพศชายแลนเพศชายแล,วถ,,วถ,าเราสาเราส-งให,แสดงอายDและนาหน-งให,แสดงอายDและนาหนกก6จะแสดกก6จะแสดงออกมา งออกมา แตแตถ,ถ,าถ#าถ#กกาหนดคDณสมบกกาหนดคDณสมบต8เปCต8เปCนเพศหญ8งแล,วกลบนเพศหญ8งแล,วกลบ  ไมแสดงอายDและนาหนกออกมาให,เรา ซ-งเก8ดจากการท-เราได,

 ไมแสดงอายDและนาหนกออกมาให,เรา ซ-งเก8ดจากการท-เราได,กาหนดในพฤต8กรรมนในแมแบบไว,แล,ววา โดยอย#ในกาหนดในพฤต8กรรมนในแมแบบไว,แล,ววา โดยอย#ใน พฤต8

พฤต8กรรมทกรรมท - -ช&ช& - -อ showAgeและ showWeightวอ showAgeและ showWeightวาถ,าถ,าเปCนเพศหญ8าเปCนเพศหญ8งจะ NoAnswerออกมา ด,งจะ NoAnswerออกมา ด,วยเหตDวยเหตDผลบางประการ ;Pผลบางประการ ;P จากตวอย จากตวอยางนางน  ยงมยงมจDจDดอดออนเร&-องของการตงคอนเร&-องของการตงคาคDาคDณสมบณสมบต8หลายอยาง เชนการกาหนดเพศนนจะต,ต8หลายอยาง เชนการกาหนดเพศนนจะต,องเปCน 1ทองเปCน 1ท - -เปCเปCนเพศนเพศ ชายและ 2ท ชายและ 2ท - -เปCนเพศหญ8เปCนเพศหญ8งซงซ -งถ, -งถ,าเราตาเราตงคาคDณสมบงคาคDณสมบต8โดยตรงแบบชDดคาส-งท- 5นต8โดยตรงแบบชDดคาส-งท- 5น  นจะทาให,นจะทาให,ข,อม#ลคDณสมบข,อม#ลคDณสมบต8ต8ผ8ดเพยนไปผ8ดเพยนไป จากท-ควรจะเปCนเราจงจาเปCนต,องปรบเปล-ยนการตงคาคDณสมบ จากท-ควรจะเปCนเราจงจาเปCนต,องปรบเปล-ยนการตงคาคDณสมบต8ใหมโดยต8ใหมโดยทางานผานพฤทางานผานพฤต8กรรมแทนซ-งต8กรรมแทนซ-งชวยในการชวยในการ กรองข,อม#ลให,เรากอนทาการตงคาให, กรองข,อม#ลให,เรากอนทาการตงคาให,กบคDณสมบกบคDณสมบต8จร8ง ๆ ซ-งเปCนคDณสมบต8จร8ง ๆ ซ-งเปCนคDณสมบต8ต8ท-อย#ในข,อกาหนดการหอหD,มภายในท-อย#ในข,อกาหนดการหอหD,มภายใน (Encapsulation)น (Encapsulation)น  นเอง นเอง โดยตามข,อกาหนดท-โดยตามข,อกาหนดท-ร#,โดยทร#,โดยท-วก-วกนในวงการนในวงการการเขยนโการเขยนโปรแกรมปรแกรมเช8งวเช8งวตถDตถDวาการตงคาให,วาการตงคาให,กบกบ

(14)
(15)

คDคDณสมบณสมบต8ต8นนต,นนต,องใช,องใช,คาขคาขนต,นวา นต,นวา set set ทท - -แปลวาแปลวา ต*ต*  ?  ?งค-างค-า และการเรยกใช,และการเรยกใช,คาคDคาคDณสมบณสมบต8ต8นน นใช, นใช,คาขนต,คาขนต,นวา นวา get get ทท - -แปลวาแปลวา

เข

เขาถงาถง แล,วตามด,แล,วตามด,วยช&-อคDณสมบวยช&-อคDณสมบต8ต8นน ๆ เพ&-นน ๆ เพ&-องายตอการเรยกใช,องายตอการเรยกใช,และส&-อความหมายมากขและส&-อความหมายมากขน น ทางผ#ทางผ# ,เขยนจงขอนาชDดคา ,เขยนจงขอนาชDดคา สส - -งทงท - - 5มาปร5มาปรบปรDบปรDงให,งให,ดดขข  นไปอนไปอกก

<? <? php php class

class human {human {  var

 var $name = “human”;// default name = “human”$name = “human”;// default name = “human”  var

 var $Sex= $Sex= 1; 1; // // default default = = 1 1 and and 1 1 = = male, male, 2 2 = = femalefemale  var

 var $h$heieighghtt = = 0; 0; // // heheigight ht > > 00  var

 var $w$weieighghtt = = 0; 0; // // weweigight ht > > 00  var

 var $age $age = = 0; 0; // // age age > > 00 function

function setName($value = 'human'){setName($value = 'human'){ $this->name = $value;

$this->name = $value; }

}

function

function setSex($value = 1){setSex($value = 1){

$this->Sex = ($value == 1 || $value ==

$this->Sex = ($value == 1 || $value == 2 ? $value : 1);2 ? $value : 1); }

}

function

function setHeight($value = 1){setHeight($value = 1){

$this->height = ($value > 0 ? $value : $this->height = ($value > 0 ? $value : 1 );1 ); }

}

function

function setWeight($value = 1){setWeight($value = 1){

$this->weight = ($value > 0 ? $value : $this->weight = ($value > 0 ? $value : 1 );1 ); }

}

function

function setAge($value = 1){setAge($value = 1){

$this->age = ($value > 0 ? $value : 1 ); $this->age = ($value > 0 ? $value : 1 ); }

}

function

function getName(){getName(){ return

return $this->name;$this->name; }

}

function

function getSex(){getSex(){ return

return ($this->Sex == 1 ? 'male' : 'female');($this->Sex == 1 ? 'male' : 'female'); }

}

function

function getHeight(){getHeight(){ return

return $this->height;$this->height; }

}

function

function getWeight(){getWeight(){ return

return ($this->Sex == 2 ? 'No Answer' : ($this->Sex == 2 ? 'No Answer' : $this->weight);$this->weight); }

}

function

function getAge(){getAge(){ return

return ($this->Sex == 2 ? 'No Answer' : ($this->Sex == 2 ? 'No Answer' : $this->age);$this->age); } } } } ?> ?> ชDชDดคดคาสาส - -งทงท - -  จากชDดคาส

จากชDดคาส-งท- -งท- จะเห6นได,จะเห6นได,วา วา ผ#,เผ#,เขยนนขยนนนไนได,ปรด,ปรบปรDงจากบปรDงจากการใช,การใช,คาวาคาวา show show เปCนคาวาเปCนคาวา get get แทแทนน และไดเพFมและไดเพFม

พฤตFกรรมใหม-พฤตFกรรมใหม-ททมม set set เปXนคาข?นตนและตามดวยช7อต*วแปรโดยสรางข?นมาเพ7อใหใชพฤตFกรรมน?ในการเปXนคาข?นตนและตามดวยช7อต*วแปรโดยสรางข?นมาเพ7อใหใชพฤตFกรรมน?ในการ

เปลยนแปลงค-าแทนการต*?งค-าให

เปลยนแปลงค-าแทนการต*?งค-าใหก*บค9ณสมบ*ก*บค9ณสมบ*ตFโดยตรงตFโดยตรงแบบชDดคาสแบบชDดคาส-งท- -งท- 5โดยในพฤต8ก5โดยในพฤต8กรรม รรม setNamsetNamesetSeesetSe setHeightsetWeightและ setAgeโดยจะม

setHeightsetWeightและ setAgeโดยจะมคคาเร8าเร8 -มต,นของการท -มต,นของการทางานไว,างานไว,ท-พาราม8ท-พาราม8เตอรQเตอรQเปCน 1 ไว,เปCน 1 ไว,กอนแล,วเพ&-อปกอนแล,วเพ&-อปองกองกนผ#นผ# , , เขยนโปรแกรมนนล&มใส

เขยนโปรแกรมนนล&มใสคาลงไป ซ-งใน setNameนคาลงไป ซ-งใน setNameน นได, นได,กาหนดพาราม8เตอรQกาหนดพาราม8เตอรQตงต,นไว,เชนกน แตเปCนการกาหนดช&-อตงต,นไว,เชนกน แตเปCนการกาหนดช&-อ hum

humanแทน anแทน ซ-งใน ซ-งใน setsetSeนSeน นได, นได,มการดกจบคาวาต,องมมการดกจบคาวาต,องมคาคาเพยง เพยง 1และ 1และ 2เทาน2เทานน สวน น สวน setsetHeiHeightghtsetsetWeiWeightght และ setAgeก6ได,

และ setAgeก6ได,ดกจดกจบคาวา คาท-ใสบคาวา คาท-ใสเข,ามานนต,องมเข,ามานนต,องมคามากกวา 0 เสมอ คามากกวา 0 เสมอ ซ-งจากท-เราได,ซ-งจากท-เราได,ทาแบบนทาแบบนทาให,ทาให,การตการตงคาและงคาและ เข,

(16)

References

Related documents

We fi nd that an increase in advertising fees makes it more likely that the market outcome exhibits segmentation: fi rms increase the probability with which they target their ads on

Ever see how much skin will change if it’s inside a cast or under a bandage for a long time.. The change is like that but

1 Combined global distribution of seven major vector-borne diseases for which integration of vector control programmes may be beneficial: malaria, lymphatic filariasis,

The rational analogues of Beckman- Quarles theorem means that, for certain dimensions d, every unit- distance preserving mapping from Q d into Q d is an isometry.. The purpose

Seven students took Level One and four students took Level Two of Clear Talk Mastery for their speech training and presentation skills. The funds from this award, with the help

[r]

This paper focuses on using Rasch Measurement Model to evaluate the reliability and quality of the final exam questions of KKKQ2114 (DE) course and evaluate whether these

Students who hold an associate of science degree from a regionally-accredited institution or an associate of arts degree from a regionally-accredited institution that is not