我是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);
?>
如何只打印一个特定词? 例如需要什么代码才能只打印第三行的第二个字?
答案 0 :(得分:0)
在评论中提到......将来你应该告诉自己如何在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"
答案 1 :(得分:0)
这应该适合你:
只需将您的文件放入包含file()
的数组即可。然后通过department_priority
冒号以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
然后你可以简单地使用parse_ini_file()
,例如
Hola="Hello"
Good Bye="Adios"
Car="Coche"
Banana="Plátano"
Plane="Avión"