2012-01-17 16 views
13

¿Es posible identificar Linux 32 o 64 bit, usando PHP?Cómo saber si un alojamiento compartido se está ejecutando 32 o 64 bit - con php

phpinfo() 

vuelve

Linux infong 2.4 #1 SMP Mon Oct 10 09:34:36 UTC 2011 i686 GNU/Linux 

es compartida alojamiento así que puedo utilizar la línea de comandos.

+2

¿Por qué es importante? – tangrs

+5

¿Por qué importa por qué es importante? Es una pregunta, responde si puedes. – shift66

+1

Veo que no puede acceder a la línea de comandos, pero ¿puede ejecutar scripts de shell? Intenta echar un vistazo a '[shell_exec()] (http://php.net/manual/en/function.shell-exec.php)'. Si puede hacer esto, puede ingresar fácilmente un enunciado de shell para obtenerlo. –

Respuesta

21

hacer una prueba sencilla:

var_dump(is_int(9223372036854775807)); 

Para entorno de 32 bits que volverá falsa ya que este número es mucho más grande que el máximo número entero de 32 bits. Para el entorno de 64 bits, volverá a ser cierto.


O use PHP_INT_MAX como mario en los comentarios.

echo (PHP_INT_MAX == 2147483647)?'32-bit':'64-bit'; 

O utilice PHP_INT_SIZE:

echo (PHP_INT_SIZE * 8) . '-bit'; 
Cuestiones relacionadas