การเขียนโปรแกรม: $ ตัวแปรหลอกนี้ใน PHP คืออะไรและใช้งานอย่างไร

สารบัญ:

การเขียนโปรแกรม: $ ตัวแปรหลอกนี้ใน PHP คืออะไรและใช้งานอย่างไร
การเขียนโปรแกรม: $ ตัวแปรหลอกนี้ใน PHP คืออะไรและใช้งานอย่างไร

วีดีโอ: การเขียนโปรแกรม: $ ตัวแปรหลอกนี้ใน PHP คืออะไรและใช้งานอย่างไร

วีดีโอ: การเขียนโปรแกรม: $ ตัวแปรหลอกนี้ใน PHP คืออะไรและใช้งานอย่างไร
วีดีโอ: EP 18. PHP แบบไว ๆ ใน 3 นาที - สาระเดฟใน 3 นาที 2024, อาจ
Anonim

เมื่อเรียนรู้ภาษา PHP ที่แปลแล้ว โปรแกรมเมอร์เว็บมือใหม่จะพบกับแนวคิดเช่นตัวแปรหลอก $ this วัตถุประสงค์และกฎการใช้งานในโค้ดนั้นแตกต่างจากตัวแปรอื่นๆ มาก ดังนั้นจึงควรค่าแก่การพิจารณาประเด็นนี้โดยละเอียด

การเขียนโปรแกรม: $ ตัวแปรหลอกนี้ใน PHP คืออะไรและใช้งานอย่างไร
การเขียนโปรแกรม: $ ตัวแปรหลอกนี้ใน PHP คืออะไรและใช้งานอย่างไร

ชั้นเรียนและวัตถุ

การเขียนโปรแกรมเชิงวัตถุ (OOP) ซึ่งใช้ใน PHP ตั้งแต่เวอร์ชัน 5 ทำให้โปรแกรมเมอร์สามารถสร้างอินสแตนซ์จำนวนเท่าใดก็ได้ในคลาสเดียวกันที่เรียกว่าอ็อบเจ็กต์ ในกรณีนี้ แต่ละสำเนาที่สร้างขึ้นจะมีชื่อของตัวเอง ออบเจ็กต์สามารถรับข้อมูลที่เรียกว่าอาร์กิวเมนต์ ประมวลผลด้วยฟังก์ชัน แล้วส่งกลับผลลัพธ์ ฟังก์ชั่นใด ๆ ของคลาสสามารถเข้าถึงคุณสมบัติของมันได้ไม่โดยตรง แต่ผ่านการสร้างคุณสมบัติ object-> ดังนั้นคำถามจึงเกิดขึ้น: วิธีเขียนรหัสสากลที่จะอนุญาตให้วัตถุที่สร้างขึ้นทำงานกับข้อมูลโดยไม่คำนึงถึงชื่อได้อย่างไร พิจารณาตัวอย่างที่แสดงในรูปที่ 1

ภาพ
ภาพ

รหัสนี้ประกาศคลาสที่มีตัวแปร (คุณสมบัติ) และสองฟังก์ชัน (เมธอด) ซึ่งหนึ่งในนั้นคือคอนสตรัคเตอร์เช่น เริ่มต้นโดยอัตโนมัติเมื่อมีการสร้างวัตถุใหม่ งานของฟังก์ชันคอนสตรัคเตอร์คือการกำหนดข้อมูลให้กับคุณสมบัติที่อาร์กิวเมนต์ได้รับเมื่อสร้างอ็อบเจ็กต์ เมื่อเรียกเมธอดจะคืนค่าของคุณสมบัติ

ถัดไป ให้พิจารณาบรรทัดที่ 12 และ 13 ในนั้น มีการสร้างอินสแตนซ์ใหม่สองอินสแตนซ์ของคลาส ซึ่งหนึ่งในนั้นได้รับหมายเลข 5 เป็นอาร์กิวเมนต์ และอีกอัน - 7. ค่าเหล่านี้ถูกกำหนดโดยฟังก์ชันคอนสตรัคเตอร์ให้กับตัวแปร (ทรัพย์สิน) ที่เข้าถึงได้เฉพาะในชั้นเรียน แต่ละอ็อบเจ็กต์ที่สร้างขึ้นจะถูกกำหนดให้กับตัวแปรและตามนั้น (แม่นยำกว่านั้น ตัวแปรเหล่านี้ได้รับการอ้างอิงถึงอ็อบเจกต์ที่ระบุเท่านั้น แต่สิ่งนี้ไม่สำคัญในขณะนี้) ตอนนี้คุณสามารถรับค่าคุณสมบัติด้วยการเรียกวิธีการอย่างง่าย (บรรทัดที่ 15 และ 16)

กำหนด $ ตัวแปรหลอกนี้

โปรดทราบ: เรามีอ็อบเจ็กต์ที่แตกต่างกันสองแบบด้วยวิธีการเดียวกันทุกประการ

และนี่คือจุดที่ตัวแปรเทียมเข้ามาช่วยเหลือ ชื่อของมันสามารถแปลจากภาษาอังกฤษว่า "นี่" เช่น ระบุ (เป็นลิงค์) ไปยังวัตถุที่มันตั้งอยู่ ด้วยเหตุนี้ บรรทัดที่ 5 สำหรับ สามารถอ่านได้ว่า "กำหนดค่าของอาร์กิวเมนต์ให้กับคุณสมบัติของอ็อบเจกต์" บรรทัดที่ 8 - "คืนค่าของคุณสมบัติของอ็อบเจกต์" สำหรับตัวแปรจะใช้ค่าที่เหมาะสมโดยอัตโนมัติ

เงื่อนไขการใช้งาน $ this

แนะนำ: