0Pricing
PHP Academy · บทเรียน

คลาส พร็อพเพอร์ตี และเมธอด

กำหนดคลาส PHP พร้อมพร็อพเพอร์ตีและเมธอด

คลาส พร็อพเพอร์ตี และเมธอด เป็นบทเรียน PHP Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน PHP Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส PHP Academy มีบทเรียนทั้งหมด 4 บทเรียน

บทนำ: คลาส PHP

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

แนวคิดหลัก

แนวคิดสำคัญของคลาส PHP:

  • ใช้ class ClassName {} เพื่อกำหนดคลาส
  • คุณสมบัติใช้จัดเก็บข้อมูล ส่วนเมธอดใช้กำหนดพฤติกรรม
  • สร้างอินสแตนซ์ด้วย new ClassName()
  • เข้าถึงสมาชิกด้วยลูกศร ->

การกำหนดคลาส

ตัวอย่าง:

<?php
class Car {
    public string $brand;
    public int    $year;
    public float  $price;

    public function describe(): string {
        return "{$this->year} {$this->brand}";
    }
}

$car = new Car();
$car->brand = 'Toyota';
$car->year  = 2022;
$car->price = 25000.0;

echo $car->describe(); // 2022 Toyota

ตัวระบุการเข้าถึง

ต่อเนื่อง:

<?php
class BankAccount {
    public  string $owner;
    private float  $balance;
    protected string $currency;

    // public: accessible everywhere
    // private: only within this class
    // protected: this class + subclasses
}

คุณสมบัติพร้อมชนิดข้อมูล

ฝึกปฏิบัติ:

<?php
class Product {
    public string  $name;
    public float   $price;
    public int     $stock = 0;  // default value
    public bool    $active = true;

    public function inStock(): bool {
        return $this->stock > 0;
    }
}

เมธอดของอินสแตนซ์

เจาะลึกยิ่งขึ้น:

<?php
class Counter {
    private int $count = 0;

    public function increment(): void { $this->count++; }
    public function decrement(): void { $this->count--; }
    public function reset(): void    { $this->count = 0; }
    public function value(): int      { return $this->count; }
}

$c = new Counter();
$c->increment();
$c->increment();
echo $c->value();  // 2

การเชื่อมเมธอด

การใช้งานขั้นสูง:

<?php
class QueryBuilder {
    private string $table = '';
    private int    $limit = 100;

    public function from(string $t): static { $this->table = $t; return $this; }
    public function limit(int $n): static   { $this->limit = $n; return $this; }
    public function build(): string {
        return "SELECT * FROM {$this->table} LIMIT {$this->limit}";
    }
}

echo (new QueryBuilder())->from('users')->limit(10)->build();

ค่าคงที่ของคลาส

รูปแบบการใช้งานจริง:

<?php
class HttpStatus {
    const OK        = 200;
    const NOT_FOUND = 404;
    const ERROR     = 500;

    public static function message(int $code): string {
        return match($code) {
            self::OK        => 'OK',
            self::NOT_FOUND => 'Not Found',
            default         => 'Error',
        };
    }
}

echo HttpStatus::message(HttpStatus::NOT_FOUND);  // Not Found

คุณสมบัติ Readonly (PHP 8.1)

แนวปฏิบัติที่ดีที่สุด:

<?php
class Point {
    public function __construct(
        public readonly float $x,
        public readonly float $y,
    ) {}

    public function distanceTo(Point $other): float {
        return sqrt(($this->x - $other->x) ** 2 + ($this->y - $other->y) ** 2);
    }
}

$p1 = new Point(0, 0);
$p2 = new Point(3, 4);
echo $p1->distanceTo($p2);  // 5

รูปแบบการใช้งานจริง

นำทุกอย่างมารวมกันด้วยรูปแบบการใช้งานจริงสำหรับคลาส PHP

ข้อผิดพลาดที่พบบ่อย

หลีกเลี่ยงข้อผิดพลาดที่พบบ่อยเหล่านี้เมื่อใช้คลาส PHP:

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

ตรวจสอบความเข้าใจ

ตัวระบุการเข้าถึงใดทำให้คุณสมบัติเข้าถึงได้เฉพาะภายในคลาสนั้นเอง

ทบทวน: คลาส PHP

คุณได้เรียนรู้เกี่ยวกับคลาส PHP แล้ว ประเด็นสำคัญที่ควรจำ:

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

คำถามที่พบบ่อย

บทเรียน “คลาส พร็อพเพอร์ตี และเมธอด” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “คลาส พร็อพเพอร์ตี และเมธอด” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส PHP Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส PHP Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “คลาส พร็อพเพอร์ตี และเมธอด”

กำหนดคลาส PHP พร้อมพร็อพเพอร์ตีและเมธอด คุณปฏิบัติ PHP Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน PHP Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน PHP Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน

บทเรียน “คลาส พร็อพเพอร์ตี และเมธอด” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน PHP Academy นี้ได้ไหม

ได้ บทเรียน PHP Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. คลาส พร็อพเพอร์ตี และเมธอด
  2. คอนสตรักเตอร์และดีสตรักเตอร์
  3. พร็อพเพอร์ตีและเมธอดแบบ static
  4. ภาพรวมเมธอดมหัศจรรย์
← กลับไปที่ PHP Academy