varios valores usar una txt texto por linea leer guardar desde datos como carpeta array archivo abrir php arrays text-files fgets

php - valores - Lea cada línea de archivo txt al nuevo elemento de matriz



php leer archivo linea por linea (11)

Estoy tratando de leer cada línea de un archivo de texto en una matriz y tener cada línea en un nuevo elemento.
Mi código hasta ahora.

<?php $file = fopen("members.txt", "r"); $i = 0; while (!feof($file)) { $line_of_text = fgets($file); $members = explode(''/n'', $line_of_text); fclose($file); ?>


Es tan fácil como eso:

$lines = explode("/n", file_get_contents(''foo.txt''));

file_get_contents() - obtiene todo el archivo como una cadena.

explode("/n") - dividirá la cadena con el delimitador "/n" - qué es el escape ASCII-LF para una nueva línea.

Pero preste atención: compruebe que el archivo tenga terminaciones en la línea UNIX .

si "/n" no funciona correctamente, tiene otra codificación de 2 nueva línea y puede probar "/r/n" , "/r" o "/025"


Estabas en el camino correcto, pero hubo algunos problemas con el código que publicaste. En primer lugar, no había un corchete de cierre para el ciclo while. En segundo lugar, $ line_of_text se sobrescribirá con cada iteración de bucle, que se soluciona cambiando el = a a. = En el bucle. En tercer lugar, está explotando los caracteres literales ''/ n'' y no una nueva línea real; en PHP, las comillas simples denotan caracteres literales, pero las comillas dobles en realidad interpretarán los caracteres y las variables escapados.

<?php $file = fopen("members.txt", "r"); $i = 0; while (!feof($file)) { $line_of_text .= fgets($file); } $members = explode("/n", $line_of_text); fclose($file); print_r($members); ?>


Esto se ha cubierto bastante bien aquí, pero si REALMENTE necesita un rendimiento incluso mejor que cualquiera de los enumerados aquí, puede usar este enfoque que usa strtok .

$Names_Keys = []; $Name = strtok(file_get_contents($file), "/n"); while ($Name !== false) { $Names_Keys[$Name] = 0; $Name = strtok("/n"); }

Tenga en cuenta que esto supone que el archivo se guarda con /n como carácter de nueva línea (puede actualizarlo según sea necesario) y también almacena las palabras / nombres / líneas como las teclas de matriz en lugar de los valores, para que pueda usarlo como una tabla de búsqueda, lo que permite el uso de isset (mucho, mucho más rápido), en lugar de in_array .


La forma más rápida que he encontrado es:

// Open the file $fp = @fopen($filename, ''r''); // Add each line to an array if ($fp) { $array = explode("/n", fread($fp, filesize($filename))); }

donde $ filename va a ser la ruta y el nombre de su archivo, ej. ../filename.txt.

Dependiendo de cómo haya configurado su archivo de texto, tendrá que jugar con el bit / n.


Si no necesita ningún procesamiento especial, this debería hacer lo que está buscando

$lines = file($filename, FILE_IGNORE_NEW_LINES);


Solo usa esto:

$array = explode("/n", file_get_contents(''file.txt''));


$file = file("links.txt"); print_r($file);

Esto será aceptar el archivo txt como matriz. Así que escriba cualquier cosa en el archivo links.txt (utilice una línea para un elemento) después, ejecute esta página :) su matriz será $ file


$file = __DIR__."/file1.txt"; $f = fopen($file, "r"); $array1 = array(); while ( $line = fgets($f, 1000) ) { $nl = mb_strtolower($line,''UTF-8''); $array1[] = $nl; } print_r($array);


$lines = array(); while (($line = fgets($file)) !== false) array_push($lines, $line);

Obviamente, primero deberá crear un identificador de archivo y almacenarlo en $file .


$yourArray = file("pathToFile.txt", FILE_IGNORE_NEW_LINES);

FILE_IGNORE_NEW_LINES evita agregar nueva línea al final de cada elemento de la matriz
También puede usar FILE_SKIP_EMPTY_LINES para Omitir líneas vacías

referencia this


<?php $file = fopen("members.txt", "r"); $members = array(); while (!feof($file)) { $members[] = fgets($file); } fclose($file); var_dump($members); ?>