我正在尝试更新数组变量值中的变量值。
您将看到我正在写出一个文件:file_put_contents()
。 implode("\r\n", $contents)...
包含$contents
变量。
我需要$body_file_count
来增加if ($i == $per_file) {...
很明显,在这种情况下,$ contents数组无法更新变量值$body_file_count
。
$body_file_count
是输出的文件数。它实际上与文件标题中的数字相同:$file_count
...
基本上,我只需要将$body_file_count
写入:
$default_contents=$contents=array("BODY CONTENT TOP . "$body_file_count" . ");
每次($i == $per_file) {
次迭代。显然,如果我可以将$ file_count传递给$body_file_count
,我可以废弃$content
,因为$file_count
正在按预期更新标题。
$body_file_count = 0;
$footer = "FOOTER";
$default_contents = $contents = array("BODY CONTENT TOP . "$body_file_count" . ");
while ($row = mysql_fetch_array($result)) {
$line = "...";
$contents[] = $line; // Each array element will be a line in the text file
$i++;
$recs++;
if ($i == $per_file) {
$contents[] = $footer; // Add the footer to the end
file_put_contents($_POST["a"] . "-#" . $file_count . "-" . date('Y') . "-" . $_POST["b"] . "-" . $recs . "-" . $txtdate . '.txt', implode("\r\n", $contents));
$i = 0;
$recs = 0;
$contents = $default_contents;
$file_count++;
$body_file_count++;
} // End of if()
} // End of while()
答案 0 :(得分:1)
首先要注意你忘记在$ default_contents初始化上添加字符串连接运算符(“。”)
我不知道我是否理解你的问题。如果我完全理解你的问题,你可以尝试每次更改$ body_file_count ++时更新$ default_contents
$body_file_count = 0;
$footer = "FOOTER";
$default_contents = $contents = array("BODY CONTENT TOP . " . $body_file_count . " . ");
while ($row = mysql_fetch_array($result)) {
$line = "...";
$contents[] = $line; // Each array element will be a line in the text file
$i++;
$recs++;
if ($i == $per_file) {
$contents[] = $footer; // Add the footer to the end
file_put_contents($_POST["a"] . "-#" . $file_count . "-" . date('Y') . "-" . $_POST["b"] . "-" . $recs . "-" . $txtdate . '.txt', implode("\r\n", $contents));
$i = 0;
$recs = 0;
$file_count++;
$body_file_count++;
$default_contents = array("BODY CONTENT TOP . " . $body_file_count . " . ");
$contents = $default_contents;
} // End of if()
} // End of while()
此外,如果除了提供初始内容之外你不需要任何其他变量,那么你可以把它带走
$body_file_count = 0;
$footer = "FOOTER";
$contents = array("BODY CONTENT TOP . " . $body_file_count . " . ");
while ($row = mysql_fetch_array($result)) {
$line = "...";
$contents[] = $line; // Each array element will be a line in the text file
$i++;
$recs++;
if ($i == $per_file) {
$contents[] = $footer; // Add the footer to the end
file_put_contents($_POST["a"] . "-#" . $file_count . "-" . date('Y') . "-" . $_POST["b"] . "-" . $recs . "-" . $txtdate . '.txt', implode("\r\n", $contents));
$i = 0;
$recs = 0;
$file_count++;
$body_file_count++;
$contents = array("BODY CONTENT TOP . " . $body_file_count . " . ");
} // End of if()
} // End of while()