51 lines
870 B
PHP
51 lines
870 B
PHP
<?php
|
|
|
|
class SportObject2
|
|
{
|
|
private $object_type = 'book';
|
|
|
|
public function getObjectType(): string
|
|
{
|
|
return $this->object_type;
|
|
}
|
|
|
|
public function setObjectType(string $object_type): void
|
|
{
|
|
$this->object_type = $object_type;
|
|
}
|
|
|
|
public function __clone(): void
|
|
{
|
|
$this->object_type = 'computer';
|
|
}
|
|
|
|
|
|
}
|
|
|
|
$book1 = new SportObject2();
|
|
$book2 = clone $book1;
|
|
echo $book1->getObjectType();
|
|
echo $book2->getObjectType();
|
|
|
|
class SportObject3
|
|
{
|
|
private $name;
|
|
|
|
/**
|
|
* @param $name
|
|
*/
|
|
public function __construct($name)
|
|
{
|
|
$this->name = $name;
|
|
}
|
|
|
|
}
|
|
|
|
$book3 = new SportObject3('book');
|
|
$book4 = $book3;
|
|
$book5 = clone $book3;
|
|
echo var_export($book3==$book4,true);
|
|
echo var_export($book3===$book4,true);
|
|
echo var_export($book3==$book5,true);
|
|
echo var_export($book3===$book5,true);
|