使用 php,我可以"Import"包含变量的文本文件的文本吗?



我想从文本文件中生成一个表单,这样我只需要更新提到的文本文件而不是PHP网站即可。因为我需要知道此表格有多少条目,所以我想使用变量。(我知道一个MySQL数据库会使它变得容易得多,但我需要在没有MySQL的情况下进行(

目前我的php"导入函数"看起来像这样,逐行读取文件,从而计算我添加了多少个元素:

$file = fopen("test.txt","r");
$AmountOfEntries=0;
$EntryNumber=0;
while(! feof($file)){
    $EntryNumber++;
    $str = fgets($file);
    echo $str;
    $AmountOfEntries++;
}
fclose($file);

这是我的文本文件的内容

a<input type="checkbox" name="$EntryNumber" id="a" value="This is a"><br>
b<input type="checkbox" name="$EntryNumber" id="b" value="This is b"><br>
c<input type="checkbox" name="$EntryNumber" id="c" value="This is c"><br>
d<input type="checkbox" name="$EntryNumber" id="d" value="This is d"><br>

导入本身起作用,我唯一的麻烦就是用其值替换变量。我试图使用

将其附加
name="'. $EntryNumber. '"

,但它不起作用。另外,我首先将该行存储在$ str中的原因是,我希望如果它在回荡之前进行"处理",这将起作用。我还知道使用数组会很有帮助,我也尝试过,但是因为我想将已提交表单的整个HTML代码写回TXT文件,所以我还需要未检查的复选框,并且使用数组时,我无法确定他们的状态。因此,如果您有一个主意,我如何使用数组而不是每个复选框的单个名称进行操作,这也将受到欢迎。

预先感谢!

<?php
$str = 'a<input type="checkbox" name="$EntryNumber" id="a" value="This is a"><br>
b<input type="checkbox" name="$EntryNumber" id="b" value="This is b"><br>
c<input type="checkbox" name="$EntryNumber" id="c" value="This is c"><br>
d<input type="checkbox" name="$EntryNumber" id="d" value="This is d"><br>';
//$str = file_get_contents('test.txt');
$str_array = explode("rn", $str);
$AmountOfEntries = count($str_array);
for($EntryNumber = 0; $EntryNumber < $AmountOfEntries; $EntryNumber++)
{
    $str_array[$EntryNumber] = str_replace('"$EntryNumber"', '"'.$EntryNumber.'"', $str_array[$EntryNumber]);
}
var_dump(implode("rn", $str_array));
?>

输出

string(254) "a<input type="checkbox" name="0" id="a" value="This is a"><br>
b<input type="checkbox" name="1" id="b" value="This is b"><br>
c<input type="checkbox" name="2" id="c" value="This is c"><br>
d<input type="checkbox" name="3" id="d" value="This is d"><br>"

最新更新