如何在 PHP 中传递对象作为函数参数?
admin 阅读:65 2024-04-12
在 php 中,对象可以通过引用或值传递给函数,传递引用允许函数修改原始对象,传递值则会创建原始对象的副本。实战案例中,员工管理系统使用对象引用传递,允许函数修改原始员工对象的薪水。

如何在 PHP 中传递对象作为函数参数?
在 PHP 中,对象可以通过引用或值传递给函数。无论哪种方法,函数都将获得对该对象的引用或副本。
传递对象引用
通过引用传递对象允许函数修改原始对象。要做到这一点,使用 & 符号传递对象:
class Person {
public $name;
public function __construct($name) {
$this->name = $name;
}
}
function changeName(&$person) {
$person->name = "John Doe";
}
$person = new Person("Jane Doe");
changeName($person);
echo $person->name; // 输出 "John Doe"传递对象值
通过值传递对象会创建原始对象的副本。这允许函数修改副本,而不会影响原始对象:
class Person {
public $name;
public function __construct($name) {
$this->name = $name;
}
}
function changeName($person) {
$person->name = "John Doe";
}
$person = new Person("Jane Doe");
changeName($person);
echo $person->name; // 输出 "Jane Doe"实战案例
员工管理系统
假设我们有一个员工管理系统,其中一个函数需要访问员工信息进行修改。
class Employee {
public $name;
public $salary;
}
function updateSalary(Employee $employee, $newSalary) {
$employee->salary = $newSalary;
}
$employee = new Employee();
$employee->name = "Jane Doe";
$employee->salary = 1000;
updateSalary($employee, 1200);
echo $employee->salary; // 输出 "1200"在这种情况下,使用对象引用传递 $employee 对象,使 updateSalary() 函数能够修改原始对象的薪水。
声明
1、部分文章来源于网络,仅作为参考。 2、如果网站中图片和文字侵犯了您的版权,请联系1943759704@qq.com处理!



