Menu
CoddyTech

方法

本课属于 Coddy PHP 学习旅程的“面向对象编程”单元。第 5 课,共 91 课。

方法是属于类的函数。它们定义了对象可以执行的行为或操作。

下面是一个包含方法的类示例:

<?php
class Calculator {
    public function greet() {
        echo "Hello! I'm a calculator.\n";
    }

    public function add($a, $b) {
        return $a + $b;
    }

    public function multiply($x, $y) {
        $result = $x * $y;
        echo $x . " × " . $y . " = " . $result . "\n";
        return $result;
    }
}

创建一个计算器对象:

$myCalc = new Calculator();

调用不需要参数的方法:

$myCalc->greet();

调用带参数的方法:

$sumResult = $myCalc->add(5, 3);
echo $sumResult . "\n";

调用一个既会打印又会返回值的方法:

$product = $myCalc->multiply(4, 7);

输出:

Hello! I'm a calculator.
8
4 × 7 = 28

方法可以:

  • 接收参数,例如 add($a, $b)
  • 返回值,例如 return $a + $b;
  • 直接打印输出,例如 echo "Hello!";
  • 同时打印并返回

要点:方法定义了对象可以做什么。在类中使用 public function 关键字来定义方法。使用 -> 运算符在对象上调用方法。

challenge icon

挑战

简单

在 bank_account.php 中创建一个 BankAccount 类,包含:

  1. 一个 public $balance 属性
  2. 一个 deposit 方法,接收一个金额并将其加到余额中
  3. 一个 withdraw 方法,接收一个金额并从余额中减去
  4. 一个 getBalance 方法,返回当前余额

然后在 driver.php 中创建一个余额为 0 的账户,存入 $100,取出 $30,并按以下格式打印余额:"Current balance: $[balance]"

亲手试试

<?php
require_once 'bank_account.php';

$myAccount = new BankAccount();
$myAccount->balance = 0;

// TODO: 存入 100

// TODO: 取出 30

// TODO: 按以下格式打印余额:"Current balance: $[balance]"
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

面向对象编程中的所有课

自己练习: PHP 在线编译器