Este grupo de expertos pasados algunos días de trabajo y recopilar de datos, obtuvieron la solución, deseamos que resulte útil para ti en tu trabajo.
NOTA: La solución a continuación no funciona en Windows. En linux exec, un comando “qué ping” desde la consola, y establezca la ruta del comando (de la llamada ejecutiva sugerida) en consecuencia
Creo que desea verificar el estado de salida del comando, mientras que shell_exec le brinda una salida completa (podría ser peligroso, debe cambiar la salida del comando de una versión de comando a otra, por alguna razón). Además, su variable $ip no se interpreta entre comillas simples. Tendrías que usar los dobles “”. Eso podría ser lo único que necesita arreglar para que funcione.
Pero creo que seguir el código puede ser más “portátil”. En mi humilde opinión, de hecho, es mejor captar el estado de salida, en lugar de intentar analizar el resultado string. En mi humilde opinión, también es mejor especificar la ruta completa al comando ping.
Esto tampoco me funcionó en Wordpress. También probé -t y -n y otras formas, pero no funcionó. Solía,
function pingAddress($ip)
$pingresult = exec("/bin/ping -c2 -w2 $ip", $outcome, $status);
if ($status==0)
$status = "alive";
else
$status = "dead";
$message .= '';
$message .= 'The IP address, '.$ip.', is '.$status.'';
return $message;
// Some IP Address
pingAddress("192.168.1.1");
Esto funcionó perfectamente para mí, finalmente. Hice referencia a esto desde http://www.phpscriptsdaily.com/php/php-ping/ Espero que esto ayude
Bueno, quiero modificar esto, ya que funciona bien en mi host local pero no en mi servidor en vivo. Para el servidor en vivo, tengo otra cosa que ahora funciona tanto para local como para vivo.
$fp = fSockOpen($ip,80,$errno,$errstr,1);
if($fp) $status=0; fclose($fp); else $status=1;
Luego muestro que el servidor está activo para 0 e inactivo para 1.
Esto funciona perfectamente para mi. Obtuve esto del sitio de Ping y devolví el resultado en PHP Gracias @ karim79
He desarrollado el algoritmo para trabajar con sistemas operativos heterogéneos, tanto Windows como Linux.
Implementa la siguiente clase:
myOS()) else
if (!exec("ping -q -c1 ".$ip_addr." >/dev/null 2>&1 ; echo $?"))
return true;
return false;
$ip_addr = "151.101.193.69"; #DNS: www.stackoverflow.com
if ((new CheckDevice())->ping($ip_addr))
echo "The device exists";
else
echo "The device is not connected";
Nos puedes corroborar nuestro ensayo exponiendo un comentario o valorándolo te damos la bienvenida.
¡Haz clic para puntuar esta entrada!(Votos: 0 Promedio: 0)
Utiliza Nuestro Buscador