Static Keyword สำหรับ OOP ใน PHP5

Static Keyword สำหรับ OOP ใน PHP5 "Static" จริงๆ แปลว่าคงที่ แต่ในที่นี้ให้เข้าใจว่าแปลว่า คงอยู่จะเข้าใจง่ายกว่านะครับ กล่าวคือเมื่อประกาศและเรียกใช้งานแล้วครั้งหนึ่งมันก็ยังจะคงอยู่ และเรียกใช้ค่านี้ได้ต่อๆ ไปเมื่อเราต้องการ  ในบทความนี้จะแสดงการใช้งาน Static Keyword ใน php5 มันไม่เหมือนกับ methods หรือสมาชิกข้อมูลใน OOP แต่มัน คือ ขอบเขตที่ถูกกำหนดโดยตัวชี้เฉพาะการเข้าถึง  static methods หรือ attributes มันเป็นส่วนหนึ่งของคลาส ดังนั้นจึงสามารถใช้ได้กับทุกกรณีที่กำหนดไว้สำหรับคลาส เมื่อเราจะใช้ งาน method หรือ attributes ในลักษณะที่มีคุณสมบัติ เป็น static เราต้องกำหนด keyword "static" ไว้ข้างหน้า attributes ก่อนนะครับ แล้วเวลาจะเรียกใช้ ก็ใช้ operator (::) เข้ามาช่วย ขั้นระหว่าง ค่าที่เป็น static กับ ชื่อคลาสที่เราเรียกใช้
อ่านมาอาจจะงง ลองดูตัวอย่างดีกว่าครับ แล้วค่อยมาอ่านคำอธิบายใหม่อีกครั้ง
ตัวอย่างการสร้างคลาสและใช้งานตัวแปลที่เป็น static keyword

ไฟล์ตัวอย่าง ::ex_code.php
<?php
class ClassName
{
static private $staticvariable; // กำหนดให้เป็นค่าคงที่ เพื่อให้ค่ายังคงอยู่ต่อไป
function __construct($value)
{
if($value != "")
{
ClassName::$staticvariable = $value; // กำหนดค่าให้ตัวตัวแปลคงที่
}
$this->getStaticData();
}
public function getStaticData()
{
echo ClassName::$staticvariable; //การเข้าใช้งานตัวแปรแบบคงที่
}
}

$a = new ClassName("12");
$a = new ClassName("23");
$a = new ClassName("");
?>

ผลที่ได้
12
23
23
ในคลาสนี้จะมี constructor ด้วยนะครับ

หัวเรื่อง
Static Keyword สำหรับ OOP ใน PHP5 - OOP
หมวดหมู่
PHP OOP, PHP OOP
ฮิต
29348
ผู้สร้างเอกสาร
thatsawan
วันที่สร้างเอกสาร
2014-05-14 22:59:29

OOP_11.zip

ประเภทไฟล์ zip

ขนาดไฟล์ 630 bytes

ผู้อัพโหลดไฟล์ thatsawan

วันที่อัพโหลด 2014-05-14 15:59:21


กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
การเขียน Selenium ให้แจ้งเตือน Message Error
โดย athirach.offcial จ 01 เม.ย. 2024 11:59 am บอร์ด Software testing
0
113
จ 01 เม.ย. 2024 11:59 am โดย athirach.offcial View Topic การเขียน Selenium ให้แจ้งเตือน Message Error
เครื่องมือที่ช่วยในการทำ Automated test ใน python
โดย athirach.offcial จ 01 เม.ย. 2024 11:51 am บอร์ด Software testing
0
109
จ 01 เม.ย. 2024 11:51 am โดย athirach.offcial View Topic เครื่องมือที่ช่วยในการทำ Automated test ใน python
selenium เวอร์ชั่น ปัจจุบัน เป็นเวอร์ชั่นที่เท่าไหร่
โดย athirach.offcial จ 01 เม.ย. 2024 11:39 am บอร์ด Software testing
0
86
จ 01 เม.ย. 2024 11:39 am โดย athirach.offcial View Topic selenium เวอร์ชั่น ปัจจุบัน เป็นเวอร์ชั่นที่เท่าไหร่
ปัจจัยที่ทำให้เกิด Spam score ในเว็บไซต์
โดย athirach.offcial จ 01 เม.ย. 2024 11:27 am บอร์ด Share Knowledge
0
150
จ 01 เม.ย. 2024 11:27 am โดย athirach.offcial View Topic ปัจจัยที่ทำให้เกิด Spam score ในเว็บไซต์
Dell Optiplex 980 ไม่รองรับแรม Rank แบบ Single Rank
โดย mindphp จ 01 เม.ย. 2024 1:55 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
349
จ 01 เม.ย. 2024 1:55 am โดย mindphp View Topic Dell Optiplex 980 ไม่รองรับแรม Rank แบบ Single Rank
การจัดประเภทของการ Test โปรแกรม
โดย athirach.offcial ส 30 มี.ค. 2024 12:54 pm บอร์ด Software testing
0
214
ส 30 มี.ค. 2024 12:54 pm โดย athirach.offcial View Topic การจัดประเภทของการ Test โปรแกรม
เทคนิคการเขียน Test Case ให้ครอบคลุม
โดย athirach.offcial ส 30 มี.ค. 2024 12:50 pm บอร์ด Software testing
0
167
ส 30 มี.ค. 2024 12:50 pm โดย athirach.offcial View Topic เทคนิคการเขียน Test Case ให้ครอบคลุม
Automated test เหมาะสำหรับงานเทสแบบไหน
โดย athirach.offcial ส 30 มี.ค. 2024 12:46 pm บอร์ด Software testing
0
188
ส 30 มี.ค. 2024 12:46 pm โดย athirach.offcial View Topic Automated test เหมาะสำหรับงานเทสแบบไหน