Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

PHP การสืบทอดคุณสมบัติของออบเจกต์ที่ไม่ใช่คลาส (Non-class Object)

สำหรับกรณีนี้ ให้ใช้ clone พร้อมกับการตั้งค่าคุณสมบัติเป็น null

ตัวอย่างโค้ด

โค้ด PHP ดังต่อไปนี้

<!DOCTYPE html> <html> <body> <?php $firstObject = (object)[ "Name" => "John", "Age" => 20 ]; $secondObject = clone $firstObject; var_dump($firstObject); echo "<br>"; var_dump($secondObject); foreach ($secondObject as $keyName => $keyValue) { $secondObject->$keyName = null; } echo "<br>"; var_dump($secondObject); $firstObject = [ "Name" => "John", "Age" => 20 ]; echo "<br>"; $arrayObject = array_fill_keys(array_keys($firstObject), null); $secondObject = (object)$arrayObject; var_dump($secondObject); ?> </body> </html>

ผลลัพธ์

จะได้ผลลัพธ์ดังนี้

object(stdClass)#1 (2) { ["Name"]=> string(4) "John" ["Age"]=> int(20) } object(stdClass)#2 (2) { ["Name"]=> string(4) "John" ["Age"]=> int(20) } object(stdClass)#2 (2) { ["Name"]=> NULL ["Age"]=> NULL } object(stdClass)#1 (2) { ["Name"]=> NULL ["Age"]=> NULL }