当我运行php -m cmd
时,POSIX不会显示,但是,我在Linux上使用Plesk 9的phpinfo()
–enable-posix=shared
上看到了它。
基本上,我不能使用posix_*()
函数,如下所述
http://www.php.net/manual/en/ref.posix.php
此节目不存在:
if (function_exists('posix_getuid')) {
echo "posix_getuid available";
} else {
echo "posix_getuid not available"; // this prints in my server.
}
有人可以告诉我如何安装它吗?谢谢。
[PHP Modules] bz2 calendar ctype curl date dbase dom exif fileinfo filter ftp gd geoip gettext gmp hash iconv imap ionCube Loader json libxml mbstring mcrypt memcache mhash mysql mysqli openssl pcntl pcre PDO pdo_mysql pdo_sqlite readline Reflection session shmop SimpleXML sockets SPL sqlite standard tokenizer wddx xml xmlreader xmlwriter xsl zip zlib
答案 0 :(得分:41)
我找到了解决方案:
yum install php-process
此软件包启用了php-posix。
答案 1 :(得分:4)
虽然已经解决,但最初的问题似乎是Windows不支持posix_getpwuid
:
来自:http://www.php.net/manual/en/function.posix-getpwuid.php
在Windows上,posix_getpwuid()
未实现
如果您只想要当前用户的用户名,可以使用get_current_user()
。
要正确获取正在运行的用户,请测试function_exists('posix_getpwuid')
是否为getenv('USERNAME')
,假设您在Windows上运行并致电{{1}}。
答案 2 :(得分:1)
在openSUSE中使用命令zypper install php-posix
来安装php-process以使用php函数posix_getuid