Foros aprenderaprogramar.com

Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: bermartinv en 23 de Marzo 2017, 10:58

Título: Curso PHP Leer, escribir archivos de texto funciones para operar datos CU00836B
Publicado por: bermartinv en 23 de Marzo 2017, 10:58
Hola, adjunto mi solución al ejercicio CU00836B del tutorial de programador web con PHP desde cero.

Citar
a) Una función (tipo procedimiento, no hay valor devuelto) denominada escribirTresNumeros que reciba tres números enteros como parámetros y proceda a escribir dichos números en tres líneas en un archivo denominado datosEjercicio.txt. Si el archivo no existe, debe crearlo.

b) Una función denominada obtenerSuma (tipo función, devolverá un valor numérico) que reciba una ruta de archivo como parámetro, lea los números existentes en cada línea del archivo, y devuelva la suma de todos esos números.

c) Una función denominada obtenerArrNum (tipo función, devolverá un array de valores numéricos) que reciba una ruta de archivo como parámetro, lea los números existentes en cada línea del archivo, y devuelva un array cuyo índice 0 contendrá el número existente en la primera línea, cuyo índice 1 contendrá el número existente en la segunda línea y así sucesivamente.

d) Crea código php donde a través de la función escribirTresNumeros escribas en el fichero los números 2, 8, 14. Luego, mediante la función obtenerSuma muestra por pantalla el resultado de sumar los números existentes en el archivo. Finalmente, mediante la función obtenerArrNum obtén el array, recórrelo y muestra cada uno de los elementos del array.

http://cursophp.byethost14.com/aprenderaprogramar/rwarchivos/escribirTresNumeros.php (http://cursophp.byethost14.com/aprenderaprogramar/rwarchivos/escribirTresNumeros.php)

Y el código
Código: [Seleccionar]
<!DOCTYPE html>
<html>
<head>
<title>Ejemplo aprenderaprogramar.com</title>
<meta charset="utf-8">
</head>
<body>
            <h3>
<?php
                    
                        
function escribirTresNumeros($numero1,$numero2,$numero3){
                            
$fp fopen('datosEjercicio.txt','a+'); 
                            
fputs($fp,$numero1."\r\n");
                            
fputs($fp,$numero2."\r\n");
                            
fputs($fp,$numero3."\r\n");
                            
                            
fclose($fp);
                        }
                         
                        function 
obtenerSuma($archivo){
                            
$suma 0;
                            
$fp fopen($archivo'r');
                            while (!
feof($fp)){
                                
$linea fgets($fp);
                                
$suma $suma $linea
                             }
                           
fclose($fp);
                        return 
$suma;
                        }
                        
                        function 
obtenerArrNum($archivo){
$fp fopen($archivo'r');
$contador 0;
while(!feof($fp)) {
                                        
$contador++;
$arrayNum[$contador] = fgets($fp);
                                        
}
return $arrayNum;
}
                        
escribirTresNumeros(2,8,14);
                        
escribirTresNumeros(4,8,14);
                    
$suma obtenerSuma('datosEjercicio.txt');
                    echo 
'La suma de los  numeros es '$suma.'<br/>';
                    
$nuestroArray obtenerArrNum('datosEjercicio.txt');
  for(
$i=1$i<count($nuestroArray); $i++) {
echo 'En el índice  ' $i ' de nuestro array, su valor es ' $nuestroArray[$i] . '<br/>';
}       
                        
?>

        </h3>
</body>
</html>

Saludos.
Título: Re:CursoPHP. Leer,escribir archivos de texto con PHP. CU00836B
Publicado por: pedro,, en 27 de Marzo 2017, 10:48
Hola bermartinv.

El ejercicio está muy bien resuelto, solo apuntar que en la función obtenerArrNum() no cerraste el archivo y es recomendable hacerlo.

Saludos. ;D