mareado
POSIX no aparece cuando ejecuto php -m cmd
sin embargo, lo veo desde el phpinfo()
–enable-posix=shared
en Linux con Plesk 9.
Básicamente, no puedo usar posix_*()
funciones como se describe en
http://www.php.net/manual/en/ref.posix.php
esto muestra que no existe:
if (function_exists('posix_getuid')) {
echo "posix_getuid available";
} else {
echo "posix_getuid not available"; // this prints in my server.
}
¿Alguien podría mostrarme cómo instalarlo? Gracias.
[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
mareado
Encontré la solución:
yum install php-process
Este paquete habilita php-posix.
-
Por cierto, si está utilizando una AMI típica de Amazon, querrá que este paquete para System_Daemon en Pear funcione correctamente.
– Ross
20 de agosto de 2012 a las 15:42
-
El nombre del paquete php-process depende de la versión de php en ejecución, como
php56w-process.x86_64
,php71w-process.x86_64
.– Nick Tsai
3 de julio de 2017 a las 2:51
el patrón
Aunque resuelto, el problema original parecería ser que posix_getpwuid
no es compatible con Windows:
de: http://www.php.net/manual/en/function.posix-getpwuid.php
En Windows, posix_getpwuid()
no está implementado
-
si solo desea el nombre de usuario del usuario actual, puede usar
get_current_user()
. -
Para obtener correctamente el usuario en ejecución, pruebe si
function_exists('posix_getpwuid')
y si no, suponga que está ejecutando Windows y llamegetenv('USERNAME')
.
-
Su respuesta no tiene ninguna relación con la pregunta, creo. El problema ocurrió en Linux y la función utilizada era diferente.
– Sven
7 de noviembre de 2012 a las 22:25
En el comando de uso de openSUSE zypper install php-posix
para instalar php-process para usar la función php posix_getuid