如果您想透過使用者名稱而不是 UID 設定 UID,請嘗試將其與 posix_getpwnam() 結合使用,
<?php
posix_seteuid (posix_getpwnam("www-data")["uid"]);
posix_setegid(posix_getpwnam("www-data")["gid"]);
?>
請注意,posix_getpwnam() 會在每次呼叫時讀取 /etc/passwd,如果您需要它快速執行,這樣會更快(只讀取 passwd 一次)
<?php
$posix_user_info=posix_getpwnam("www-data");
posix_seteuid ($posix_user_info["uid"]);
posix_setegid($posix_user_info["gid"]);
?>
要回到 root 身分,只需將它們設定為 0 即可,
<?php
posix_seteuid(0);
posix_setegid(0);
?>