在 doctrine 实体中使用 Uuid 作为身份的最有效类型
作者: flaushi创建于 2018年12月19日更新于 2020年5月1日
标签question
Hi, 我已经将 Uuid 设置为我的 doctrine 项目的主键。所有实体都具有此字段:
/**
* @var UuidInterface
*
* @ORM\Id
* @ORM\Column(type="uuid", unique=true)
*/
protected $id;
public function __construct() {
$this->id = Uuid::uuid4();
}
附件中附有一个分析器屏幕截图。

如图所示,此库的 `unserialize` 方法所花费的时间几乎占 10%。是否可以更有效地将其存储为字符串?例如:/**
- @var string
- @ORM\Id
- @ORM\Column(type="string", length=64, unique=true) */ protected $id;
public function __construct() { $this->id = Uuid::uuid4()->toString(); } 请注意,我希望保持我的代码和模型与 Postgres 和 MySQL 兼容,目前的情况就是这样。@ocramius
内容来源: ramsey/uuid