从 PHP 读取 .txt table
Read .txt table from PHP
我是 PHP 的新人。我正在尝试为小学生设计一个简单的词汇表。
我想使用 .txt 作为数据库,由“:”展开。我有这样的 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);
?>
如何只打印一个特定的单词?
例如只打印第三行第二个字需要什么代码?
就像评论中提到的...以后你应该告诉自己如何在SO上提问。
关于你的问题,你应该看看 PHP 的 explode-function 和 foreach-loops。
示例:
$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"
这应该适合你:
只需将您的文件放入数组中,其中 file()
. Then go through each line with array_map()
and 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);
?>
我是 PHP 的新人。我正在尝试为小学生设计一个简单的词汇表。
我想使用 .txt 作为数据库,由“:”展开。我有这样的 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);
?>
如何只打印一个特定的单词? 例如只打印第三行第二个字需要什么代码?
就像评论中提到的...以后你应该告诉自己如何在SO上提问。
关于你的问题,你应该看看 PHP 的 explode-function 和 foreach-loops。
示例:
$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"
这应该适合你:
只需将您的文件放入数组中,其中 file()
. Then go through each line with array_map()
and 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);
?>