class Object
{
function Object($entity)
{
$entity->name = "John";
}
}
class Entity
{
var $name = "Maria";
}
$entity = new Entity();
$obj = new Object($entity);
print $entity->name;
?>
Xem đoạn mã lệnh sau đây. Sau khi thực hiện đoạn mã trên kết quả hiển thị sẽ là gì?
Trả lời:
Đáp án đúng: B
Đoạn code PHP này minh họa cách một đối tượng có thể sửa đổi thuộc tính của một đối tượng khác được truyền vào nó. Ban đầu, biến `$entity` là một thể hiện của lớp `Entity` và thuộc tính `$name` của nó được gán giá trị "Maria". Sau đó, một thể hiện của lớp `Object` được tạo ra, và `$entity` được truyền vào constructor của `Object`. Bên trong constructor của `Object`, thuộc tính `$name` của `$entity` được thay đổi thành "John". Do đó, khi `print $entity->name;` được thực thi, nó sẽ in ra giá trị mới của `$entity->name`, là "John".