常量
posix_access() 常量
POSIX_F_OK (int) 检查该文件是否存在。
POSIX_R_OK (int) 检查文件是否存在,是否有读权限。
POSIX_W_OK (int) 检查文件是否存在,是否有写权限。
POSIX_X_OK (int) 检查文件是否存在,是否有执行权限。
posix_mknod() 常量
POSIX_S_IFBLK (int) 块特殊文件
POSIX_S_IFCHR (int) 字符特殊文件
POSIX_S_IFIFO (int) FIFO(命名管道)特殊文件
POSIX_S_IFREG (int) 标准文件
POSIX_S_IFSOCK (int) Socket
posix_setrlimit() 常量
POSIX_RLIMIT_AS (int)
进程地址空间的最大大小(以字节为单位)。另请参阅 PHP 的 memory_limit配置指令。
POSIX_RLIMIT_CORE (int)
核心文件的最大大小。如果限制设置为 0,则不会生成核心文件。
POSIX_RLIMIT_CPU (int)
进程可以使用的最大 CPU 时间量,以秒为单位。当达到软限制时,SIGXCPU将发送一个信号,该信号可以用pcntl_signal()捕获。根据操作系统的不同,SIGXCPU 每秒可能会发送额外的信号,直到达到硬限制,此时SIGKILL会发送一个无法捕获的信号。 另见set_time_limit()。
POSIX_RLIMIT_DATA (int)
进程数据段的最大大小,以字节为单位。这极不可能对 PHP 的执行产生任何影响,除非正在使用调用brk()或 sbrk()的扩展。
POSIX_RLIMIT_FSIZE (int)
进程可以创建的最大文件大小,以字节为单位。
POSIX_RLIMIT_LOCKS (int)
进程可以创建的最大锁数。这仅在非常旧的 Linux 内核上受支持。
POSIX_RLIMIT_MEMLOCK (int)
可以锁定到内存中的最大字节数。
POSIX_RLIMIT_MSGQUEUE (int)
可为 POSIX 消息队列分配的最大字节数。PHP 不支持 POSIX 消息队列,因此除非您使用实现该支持的扩展,否则此限制不会产生任何影响。
POSIX_RLIMIT_NICE (int)
进程可以达到的 最大值。将使用的值为20 - limit,因为资源限制值不能为负。
POSIX_RLIMIT_NOFILE (int)
比此进程可以打开的最大文件描述符数大 1 的值。
POSIX_RLIMIT_NPROC (int)
可以为进程的真实用户 ID 创建的最大进程数(和/或线程,在某些操作系统上)。
POSIX_RLIMIT_RSS (int)
进程驻留集的最大大小,以页为单位。
POSIX_RLIMIT_RTPRIO (int)
可以通过sched_setscheduler()和 sched_setparam()系统调用设置的最大实时优先级 。
POSIX_RLIMIT_RTTIME (int)
如果使用实时调度,进程在不进行阻塞系统调用的情况下可以消耗的最大 CPU 时间量(以微秒为单位)。
POSIX_RLIMIT_SIGPENDING (int)
可以为进程的真实用户 ID 排队的最大信号数。
POSIX_RLIMIT_STACK (int)
进程堆栈的最大大小,以字节为单位。
POSIX_RLIMIT_INFINITY (int)
用于指示资源限制的无限值。
POSIX_RLIMIT_KQUEUES (int)
允许此用户 id 创建的最大 kqueue 数 (FreeBSD)。自 PHP 8.1.0 起可用。
POSIX_RLIMIT_NPTS (int)
该用户 id 允许创建的最大伪终端数 (FreeBSD)。自 PHP 8.1.0 起可用。
函数
posix_access ( string $filename , int $flags= 0 ): bool
确定文件的可访问性,检查用户对文件的权限。
<?php
$file = "exec.php";
/**
* POSIX_F_OK (int) 检查该文件是否存在。
* POSIX_R_OK (int) 检查文件是否存在,是否有读权限。
* POSIX_W_OK (int) 检查文件是否存在,是否有写权限。
* POSIX_X_OK (int) 检查文件是否存在,是否有执行权限。
*/
if(posix_access($file, POSIX_R_OK | POSIX_W_OK | POSIX_X_OK)){
fprintf(STDOUT, "可以读写运行 \n");
}else{
$error = posix_get_last_error();
fprintf(STDOUT, "Error %s \n", posix_strerror($error));
}
posix_ctermid(): string|false
获取控制终端路径名,生成一个字符串,该字符串是进程当前控制终端的路径名。 当发生错误时,将设置errNo,可以使用posix_get_last_error()检查errNo。
posix_errno(): int
别名 posix_get_last_error()
posix_get_last_error(): int
检索最后一个失败的posix函数设置的错误号,可以使用posix_strerror()检查与errno相关的系统错误消息。如果没有错误,则返回0。
<?php
posix_kill(99999, SIGKILL);
$errorNo = posix_get_last_error();
fprintf(STDOUT, " 错误号: %d \n 信息:%s \n", $errorNo, posix_strerror($errorNo));
posix_getcwd(): string|false
获取脚本当前工作目录的绝对路径名。
posix_geteuid(): int
返回当前进程的有效用户ID。
posix_getuid(): int
返回当前进程的真实用户ID。
posix_getegid(): int
返回当前进程的有效组ID。
posix_getgid(): int
返回当前进程的真实组ID。
posix_getgrgid(int $group_id): array|false
获取关于提供其ID的组的信息。
posix_getgrnam(string $name): array|false
按名称返回关于组的信息
posix_getgroups(): array|false
返回当前进程的组集。
posix_getlogin(): string|false
返回当前进程所属用户的登录名。
posix_getpgid(int $process_id): int|false
获取作业控制的进程组ID。
posix_getpgrp (): int
返回当前进程的进程组标识符。
posix_getpid(): int
返回当前进程ID。
posix_getppid(): int
返回当前进程的父进程的进程标ID。
posix_getpwnam(string $username): array|false
根据用户名返回关于用户的信息。
posix_getpwuid(int $user_id): array|false
根据用户名ID返回关于用户的信息。
posix_getrlimit(): array|false
返回关于系统资源限制的信息。
posix_getsid(int $process_id): int|false
返回系统SID。
posix_initgroups(string $username, int $group_id): bool
判断用户是否在用户组。
posix_isatty(resource|int $file_descriptor): bool
确定文件描述符file_descriptor是否引用有效的终端类型设备。
posix_kill(int $process_id, int $signal): bool
向进程发送一个信号。
posix_mkfifo(string $filename, int $permissions): bool
创建一个fifo特殊文件。
posix_mknod(string $filename, int $flags, int $major = 0, int $minor = 0): bool
创建一个特殊或普通文件
posix_setegid(int $group_id): bool
设置当前进程的有效组ID。
posix_seteuid(int $user_id): bool
设置当前进程的有效用户ID。
posix_setgid(int $group_id): bool
设置当前进程的真实组ID。
posix_setuid(int $user_id): bool
设置当前进程的真实用户ID。
posix_setpgid(int $process_id, int $process_group_id): bool
设置作业控制的进程组ID。
posix_setrlimit(int $resource, int $soft_limit, int $hard_limit): bool
设置系统资源限制。
posix_setsid(): int
使当前进程成为会话引导程序。
posix_strerror(int $error_code): string
检索与给定errno关联的系统错误消息
posix_times(): array|false
获取有关当前 CPU 使用率的信息。
posix_ttyname(resource|int $file_descriptor): string|false
确定终端设备名称。
posix_uname(): array|false
获取系统信息。