PHP - ¿Cómo abrir un archivo de texto con php?

 
Vista:
Imágen de perfil de Joaquín
Val: 11
Ha aumentado su posición en 16 puestos en PHP (en relación al último mes)
Gráfica de PHP

¿Cómo abrir un archivo de texto con php?

Publicado por Joaquín (7 intervenciones) el 14/02/2020 17:22:44
Hola, buenos dias, estoy por terminar una página web de un Monitoreo de Red con php que me pidieron hacer en mi servicio social.

Necesito ayuda de alguien y solución que alguien pueda decir, ya logre abrir el archvo de texto, tengo los siguientes códigos reales en mi editor "Sublime Text":

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>Monitoreo de la Red del IMSS</title>
</head>
<body style="background-color:#FFDAB9;">
<img src="1.png" width="300" height="150">
<h1 align="center">
<p style="color:#09A115";>Monitoreo de la Red del IMSS</p></h1><p>
<h1 align="center">
<p style="color:#09A115";>Delegacion del Estado de Puebla</p></h1></p>
<h1 align="center">
<p style="color:#FF0080";>IP monitoreada</p></p></h1>
<?php
   $file=fopen("gateways.txt","r");
      while(!feof($file)){
       $linea = fgets($file);
       echo $linea . "<br/>";
     function Getping1($linea=NULL)  {                     //verifica los sitios
       $linea =file_get_contents("gateways.txt");
      if(getenv("OS")=="Windows_NT") {
      $exec = exec("ping -n 3 -l 64 ".$linea);
      //echo $exec;
      return explode("Getping", $exec );
  }
      else {
     $exec = exec("ping -c 3 -s 64 -t 64 ".$linea);
     $array = explode("/", end(explode("=", $exec )) );
     return ceil($array[1]) . 'ms';
   }
 
}
 
      $linea =file_get_contents("gateways.txt");
      if (Getping1($linea) == 'perdidos),') {
      echo 'Sitios no alcanzado'."<br />";
   } else if (Getping1($linea) == '0ms') {
    echo 'Sitios caido'."<br />";
   } else {
    echo 'Sitios',$linea, ' con conectividad'."<br />";
  }
}
fclose($archivo);
?>
</body>
</html>


mis códigos son de este link http://www.forosdelweb.com/f18/script-para-hacer-ping-php-936407/


Estos son los códigos que tengo, en pantalla tengo lo siguiente:


Monitoreo de la Red del IMSS

Delegacion del Estado de Puebla

IP monitoreada


98.138.219.232
Sitios98.138.219.232 13.225.54.43 172.217.5.195 40.97.12.18 104.244.42.129 52.41.139.128 con conectividad
13.225.54.43

Fatal error: Cannot redeclare Getping1() (previously declared in C:\xampp\htdocs\MonitoreoDeLaRedDelImss\index php.php:20) in C:\xampp\htdocs\MonitoreoDeLaRedDelImss\index php.php on line 20




Lo que necesito saber es, que alguien me ayude y me diga, ¿Que variable me serviría insertar en mis códigos para que cada sitio este con conectividiad?

Es de esta forma, por ejemplo:

Sitio 98.138.219.232 Con conectividad
Sitio 13.225.54.43 Con conectividad
Sitio 172.217.5.195 Con conectividad
Sitio 40.97.12.18 Con conectividad
Sitio 104.244.42.129 Con conectividad
Sitio 52.41.139.128 Con conectividad

asi es como quiero que me muestre en pantalla, por eso es que en mi servicio me pidieron abrir un archivo de texto y debe leer línea por línea hasta contener un archivo, y cada archivo debe conterner un sitio o una dirección ip, que eso es lo que intento hacer

El problema es que en pantalla tengo el mensaje de Fatal error

En mi disco local c, en la carpeta de htdocs, tengo una Carpeta que se llama MonitoreoDeLaRedDelImss, dentro de esa carpeta tengo 2 archivos, uno se llama gateways, dentro del archivo gateways, tengo agregados 6 sitios a traves del bloc de notas, que son los que acabo de mencionar y tengo otro archivo que se llama index.php, son lo únicos que tengo


Me respondieron de este link https://es.stackoverflow.com/questions/322065/c%c3%b3mo-abrir-un-archivo-de-texto-con-php
que para acceder a una variable global desde dentro de una función se debería utilizar $GLOBALS. Es decir, $GLOBALS['file'], de lo contrario, te notificará que la variable se encuentra indefinida. Se puede utilizar la función file, ya que transfiere un archivo completo a un array y me dieron un link https://www.php.net/manual/es/function.file.php que ahí viene el manual de la funcion file

comparto mis 2 imagenes en formato rar del problema

¿Alguien me puede ayudar?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

¿Cómo abrir un archivo de texto con php?

Publicado por Julio (830 intervenciones) el 14/02/2020 17:29:07
Hola.

En primer lugar, estoy hecho un lío porque en el título hablas de cómo abrir un archivo y luego dices que ya lo tienes abierto y un montón de cosas más. Independientemente de todo eso, comentas que tienes este error:

1
Fatal error: Cannot redeclare Getping1() (previously declared in C:\xampp\htdocs\MonitoreoDeLaRedDelImss\index php.php:20) in C:\xampp\htdocs\MonitoreoDeLaRedDelImss\index php.php on line 20

Ahí te está diciendo simplemente que no puedes redeclarar la función Getping1(), es decir, que en algún momento estás definiendo (realmente te lo dice, que está declarada previamente en C:\xampp\htdocs\MonitoreoDeLaRedDellmss\index.php en la línea 20) la función Getping1() y en el código que has puesto la vuelves a definir. Ahí es donde tienes el error ese que te muestra.

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar