通常我可以在线找到类似问题的解决方案,以解决我自己的问题,但是我越想到/研究这个问题,我就越困惑!处理HTML表单值并将结果输出到文本文件
乐于尝试&拼凑我自己的解决方案(和张贴在这里审查/参考),但将欣赏一些指导如何办法。
我想实现:
从包含以下字段的一个简单的HTML表单:
起始编号
尾号
开始信
结束信
将提交的信息传递给PHP脚本进行处理。
为HTML形式的示例值:
起始编号= 0
完号= 3
开始信= A
结束信= d
通过只输入开始和结束的数字/字母,脚本将确定此外所有提交的值都需要进一步的处理步骤/ ou即,1,B,C。我假设这些信息将存储在单个数组或多个数组中。
如果我想要与存储阵列(一个或多个)信息是输出与所有可能的字母+数字的组合一个文本文件,看起来类似的事:
A0 A1 A2 A3
B0 B1 B2 B3
C0 C1 C2 C3
D0 D1 D2 D3
那么这将是结束我的问题也许首先要尝试但要实现什么我需要的是数据被分成4个独立的文件如下:
文件:
FILE1.TXT
A0 B0 C0 D0
FILE2.TXT
A1 B1 C1 D1
File3.txt
A2 B2 C2 D2
FILE4。TXT
A3 B3 C3 D3
打破我的问题分解成以下步骤:
提交仅开始/结束数字/字母我怎么能确定字母/数字在中间(范围)?
答:使用
range()
我怎么能那么确定所有可能的字母+数字的组合?
不再多想,我需要做的,但将涉及合并阵列
我怎样才能然后通过数值和输出组?
通过的foreach函数处理
更新:
我的代码下面产生第一输出文件。
FILE1.TXT
A0
B0
C0
D0
您将在foreach功能我特别要求的$数组2的第一个值注意。我怎样才能重复/循环foreach和echo函数存储在$ array2中的每个值? (我知道我还需要进一步修改,以确保创建的文本文件,具有独特的文件名。)
//Example form values
$start_number = 0;
$end_number = 3;
$start_letter = 'A';
$end_letter = 'D';
//Letters array
$array1 = range($start_letter, $end_letter,1);
//Numbers array
$array2 = range($start_number, $end_number,1);
foreach($array1 as $key => $value) {
$string .= $value . $array2[0] . "\n";
}
echo file_put_contents("File1.txt",$string);
?>
工作实例:
//Example passed form values
$start_number = 0;
$end_number = 8;
$start_letter = 'A';
$end_letter = 'D';
//Numbers array
$array1 = range($start_number, $end_number,1);
//Letters array
$array2 = range($start_letter, $end_letter,1);
foreach($array1 as $key => $value) {
$string = implode($array2, $value . "\n") . $value;
echo file_put_contents($value . ".txt",$string);
}
?>
我不相信这是最好的解决办法使用implode(),但它符合我的要求,也许有人可能会觉得这篇文章有用。请提出改进建议。
+0
您可能想要更改此问题。这对我来说没有多大意义。 –
+0
嗨克里斯85,我已经尝试建议。 –
+0
它对于SO来说更清楚但太宽泛。 –