PHP-черты: как разрешить конфликт имен свойств?

Как разрешить конфликт имен свойств, когда класс использует две черты с одноименными свойствами ?

Пример:

<?php trait Video { public $name = 'v'; } trait Audio { public $name = 'a'; } class Media { use Audio, Video; } $media = new Media(); $media->name; 

Я попытался использовать вместо ( Video :: name вместо Audio ) и ( Video :: name as name2 ) без успеха.

Заранее спасибо !

Solutions Collecting From Web of "PHP-черты: как разрешить конфликт имен свойств?"

Вы не можете, это только для методов.
Однако они могут использовать одно и то же имя свойства, только если значение одно и то же:

 trait Video { public $name; function getName(){ return 'Video'; } } trait Audio { public $name; function getName(){ return 'Audio'; } } class Media { use Audio, Video { Video::getName insteadof Audio; } function __construct(){ $this->name = $this->getName(); // 'Video' } }