更新(2015年11月24日)
我已经把所有东西都正确地运作了,除了一个小细节。我需要找出如何获取我在HTML模板中的静态占位符变量,以便我可以用从TXT文件中提取的内容替换它们。
这是我的模板代码:
<!DOCTYPE html>
<html>
<head>
<title>{PAGE_TITLE}</title>
</head>
<body>
{PAGE_TITLE} - {PAGE_AUTHOR} - {PAGE_DATE}
{PAGE_CONTENT}
</body>
</html>
翻译
我查看了这个问题PHP - parsing a txt file,并尽可能地自己解决了一些问题。
我正在为教育目的创建一个简单、非常小的静态网站生成器,使用 PHP。我有一个包含单个 PHP 文件的目录(除了 HTML 模板之外,所有代码都在此文件中),它将扫描当前目录以查找任何 txt 文件,并决定是否有多个文件,以便可以使用循环来处理每个文件。
我的 txt 文件结构如下:
TITLE
AUTHOR
DATE
Text starts here...
我卡在了从文件中提取标题、作者、日期和文本内容并将它们存储在正确的变量中,以便信息可以传递到HTML模板进行处理的部分。
我还希望设置当有换行符时,它会将HTML段落标签附加到该文本块。
这是我目前为PHP文件编写的代码:
<?php
$files = glob("*.txt"); // Scan directory for .txt files
// Check that there are .txt files in directory
if ($files !== false) {
$numberOfFiles = count($files); // Count number of .txt files in directory
// Check if number of files is greater than one
if ($numberOfFiles > 1) {
// Advanced loop will go here to process multiple txt files
} else {
$file_handle = fopen ($files[0], "r"); // Open file
// Loop through file contents line-by-line
while (!feof ($file_handle)) {
$file = file_get_contents($files[0]); // Get file contents
$rows = explode ("\n", $file); // Count number of rows in file
// Need to pull TITLE, AUTHOR, and DATE from txt file
// Here's where I need the rest of the file's content to be parsed into paragraph blocks for the html template
break; // Break loop after one run
}
fclose ($file_handle); // Close file connection
}
}
?>