PHP手册的“进程ID不是唯一的”是什么意思?如何获得实际的唯一“进程ID”?

问题描述 投票:0回答:1

来源:https://www.php.net/manual/en/function.getmypid.php

警告进程ID不是唯一的,因此它们是弱熵源。我们建议不要在依赖安全性的上下文中依赖pid。

“进程ID”如何不唯一?我想念什么? getmyuid()同样是荒谬的,因为它没有提供任何有用的进程ID,而仅仅是:

获取PHP脚本所有者的UID

简而言之:如何从运行它的当前(CLI)PHP进程中获得某种唯一ID

php process windows-10 pid
1个回答
1
投票

PID不是唯一的。如果进程终止,则操作系统可能会将ID重新用于新的ID。这不是PHP的事情。

如果要生成唯一值,请使用uniqid()

https://www.php.net/manual/en/function.uniqid.php

如果您使用的是Linux,也可以在backtics(``)中使用uuidgen

var_dump(`uuidgen`);
© www.soinside.com 2019 - 2024. All rights reserved.