текстовые файлы — чтение таблицы .txt из переполнения стека

Я новичок в PHP. Я пытаюсь разработать простой глоссарий для студентов начальной школы.

Я хочу использовать .txt в качестве базы данных, взорванный «:». У меня есть текст, как это:

Hola:Hello
Good Bye: Adios
Car:Coche
Banana:Plátano
Plane:Avión

На данный момент я знаю, как напечатать весь текст или один столбец, но не могу напечатать одно слово:

 <?php

$file = fopen("bank.txt", "r");

while(!feof($file)) {

echo fgets($file). "<br />";

}

fclose($file);

?>

Как я могу напечатать только ОДИН КОНКРЕТНЫЙ СЛОВО?
например Какой код требуется для печати только второго слова третьей строки?

-2

Решение

Как упомянуто в комментариях … в будущем вы должны знать, как задавать вопросы по SO.

Что касается вашего вопроса, вы должны взглянуть на функции explode и foreach-loop в PHP.

Пример:

$data = 'Hola:Hello
Good Bye: Adios
Car:Coche
Banana:Plátano
Plane:Avión';

$arrData = array();

$lines = explode( "\n", $data );
foreach ($lines as $line) {
$words = explode( ":", $line );
$arrData[] = array( $words[0], $words[1] );
}

echo( $arrData[2][1] );
// Prints: "Coche"
0

Другие решения

Это должно работать для вас:

Просто поместите ваш файл в массив с file(). Затем пройти через каждую строку с array_map() а также explode() линия по : двоеточие.

<?php

$lines = file("test.txt", FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
$lines = array_map(function($v){
return explode(":", $v);
}, $lines);

print_r($lines);  //echo $lines[0][1] <- Will print the first line, second word

?>

Или то, что вы также можете сделать, это изменить свой файл в .ini формат файла, например

Hola="Hello"Good Bye="Adios"Car="Coche"Banana="Plátano"Plane="Avión"

И тогда вы можете просто использовать parse_ini_file(), например

<?php

$file = parse_ini_file("test.ini");
//^^^^ See also here the extension
print_r($file);

?>
0

По вопросам рекламы [email protected]