作为一个未受过 PHP 教育的人,当我尝试创建和保存一个 CSV 文件时,我开始感到困惑,该文件是由从在线表单提交的数据制成的。
在将输入发布到 PHP 代码/页面后,我在尝试从输入中“提取”数据时遇到了巨大的麻烦
出于这个问题的目的,假设我总共有 15 个输入,分为 5 行和 3 列.
我收到了一些使用 var_dump() 创建输入数组的建议。这工作得很好。我还被告知,在 var_dump() 之后,我应该构建 2 个嵌套的 foreach() 循环,而我正是在这里感到困惑。
假设该表如下所示:
var_dump() 生成的数组如下所示:
array(5) {
[1]=> array(3) {
["A"]=> string(0) "" ["B"]=> string(0) "" ["C"]=> string(0) ""
}
[2]=> array(3) {
["A"]=> string(0) "" ["B"]=> string(0) "" ["C"]=> string(0) ""
}
[3]=> array(3) {
["A"]=> string(0) "" ["B"]=> string(0) "" ["C"]=> string(0) ""
}
[4]=> array(3)
{
["A"]=> string(0) "" ["B"]=> string(0) "" ["C"]=> string(0) ""
}
[5]=> array(3) {
["A"]=> string(0) "" ["B"]=> string(0) "" ["C"]=> string(0) ""
}
}
显然 strlen() 在填充时不会为 0。etc.将[1]
是行,而["A"]
etc. 将是列。
现在跳过,最终的游戏是创建一个可能如下所示的 CSV 结构:
Header One,Header Two,Header Three,
row1-column1,row1-column2,row1-column3,
row2-column1,row2-column2,row2-column3,
row3-column1,row3-column2,row3-column3,
row4-column1,row4-column2,row4-column3,
row5-column1,row5-column2,row5-column3,
我想我可以弄清楚如何将回显的输出保存到 CSV 文件中,但我要问的是如何从数组中提取输入(假设 strlen() >0)?
我再次收到了一些关于使用两个嵌套 foreach 循环的提示。
我一定很厚,但我根本无法得到任何 foreach 变化来呼应任何东西。
利用以下建议的代码:
var_dump($_POST['Input_row']);
foreach ($Rows as $Columns) {
foreach ($Columns as $column){
echo $column.',';
}
echo "\r\n";
}