Bagaimana untuk menghantar objek sebagai parameter fungsi dalam PHP?

WBOY
Lepaskan: 2024-04-11 11:18:02
asal
757 orang telah melayarinya

Dalam PHP, objek boleh dihantar ke fungsi melalui rujukan atau nilai Meluluskan rujukan membolehkan fungsi mengubah suai objek asal, manakala menghantar nilai mencipta salinan objek asal. Dalam kes sebenar, sistem pengurusan pekerja menggunakan lulus rujukan objek untuk membolehkan fungsi mengubah suai gaji objek pekerja asal.

如何在 PHP 中传递对象作为函数参数?

Bagaimana untuk menghantar objek sebagai parameter fungsi dalam PHP?

Dalam PHP, objek boleh dihantar ke fungsi melalui rujukan atau nilai. Sama ada cara, fungsi akan mendapatkan rujukan atau salinan objek.

Melalui Rujukan Objek

Melalui objek melalui rujukan membolehkan fungsi mengubah suai objek asal. Untuk melakukan ini, lulus objek menggunakan notasi &: & 符号传递对象:

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"
Salin selepas log masuk

传递对象值

通过值传递对象会创建原始对象的副本。这允许函数修改副本,而不会影响原始对象:

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"
Salin selepas log masuk

实战案例

员工管理系统

假设我们有一个员工管理系统,其中一个函数需要访问员工信息进行修改。

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"
Salin selepas log masuk

在这种情况下,使用对象引用传递 $employee 对象,使 updateSalary()rrreee

Melalui objek mengikut nilai🎜🎜Melalui objek mengikut nilai menghasilkan salinan objek asal. Ini membolehkan fungsi mengubah suai salinan tanpa menjejaskan objek asal: 🎜rrreee🎜Contoh praktikal🎜🎜Sistem Pengurusan Pekerja🎜🎜Andaikan kita mempunyai sistem pengurusan pekerja dan salah satu fungsi perlu mengakses maklumat pekerja untuk pengubahsuaian. 🎜rrreee🎜Dalam kes ini, menghantar objek $employee menggunakan rujukan objek membolehkan fungsi updateSalary() mengubah suai gaji objek asal. 🎜

Atas ialah kandungan terperinci Bagaimana untuk menghantar objek sebagai parameter fungsi dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!