Php 创建包含某些记录集的文件集
我正在尝试创建一组文件。有100条记录每个文件将有10条记录,如果超过10条记录,它将创建新文件。并在新文件中存储下一个数据 已创建文件,但所有数据都在一个文件中Php 创建包含某些记录集的文件集,php,Php,我正在尝试创建一组文件。有100条记录每个文件将有10条记录,如果超过10条记录,它将创建新文件。并在新文件中存储下一个数据 已创建文件,但所有数据都在一个文件中 <?php function wh_BATCH($Batch_msg,$count) { $log_filename = "BATCH"; if (!file_exists($log_filename)) { // create directory/folder uploads.
<?php
function wh_BATCH($Batch_msg,$count)
{
$log_filename = "BATCH";
if (!file_exists($log_filename))
{
// create directory/folder uploads.
mkdir($log_filename, 0777, true);
}
if($count == 5)
{
$log_file_data = $log_filename.'/BATCH_1.txt';
file_put_contents($log_file_data, $Batch_msg . "\n", FILE_APPEND);
}
else
{
$log_file_data = $log_filename.'/BATCH_' . date('d-M-Y') . '.txt';
file_put_contents($log_file_data, $Batch_msg . "\n", FILE_APPEND);
}
}
for($i=0;$i<=100;$i++)
{
wh_BATCH("hello world ".$i,5);
}
?>
上面的文件应该只有10个文件,每个文件应该有10条记录
BATCH_1.txt---BATCH_10.txt
for($i=0;$i<=100;$i++)
{
wh_BATCH("hello world ".$i,5);
}
这就是为什么总是执行wh_BATCH()函数的这一部分。此部分始终附加到BATCH_1.txt
为了实现你的目标,你应该这样做
首先,将i的值传递给wh_BATCH()函数
for($i=0;$i<=100;$i++)
{
wh_BATCH("hello world ".$i, $i);
}
这就是功能
function wh_BATCH($Batch_msg,$count)
{
$log_filename = "BATCH";
if (!file_exists($log_filename))
{
// create directory/folder uploads.
mkdir($log_filename, 0777, true);
}
$number = intVal($count/10);
$number++;
$log_file_data = $log_filename.'/BATCH_'.$number.'.txt';
file_put_contents($log_file_data, $Batch_msg . "\n", FILE_APPEND);
}
在PHP5.6上测试工作代码
<?php
function wh_BATCH($Batch_msg,$count)
{
$log_filename = "BATCH";
if (!file_exists($log_filename))
{
// create directory/folder uploads.
mkdir($log_filename, 0777, true);
}
$number = intVal($count/10);
$number++;
$log_file_data = $log_filename.'/BATCH_'.$number.'.txt';
file_put_contents($log_file_data, $Batch_msg . "\n", FILE_APPEND);
}
for($i=1;$i<=100;$i++)
{
wh_BATCH("hello world ".$i, $i);
}
你能建议我如何用一些代码片段来解决这个问题吗?只有一条记录被插入到一个文件中。你能看看我附加的输出文件吗。1个文件中应该有10条记录,文件名为BATCH_2.txt(Hello world 1到Hello world 10)
下一个文件将有BATCH_2.txt(Hello world 11到Hello world 20)。请建议是,正在我的批处理文件夹中创建BATCH_1.1.txt,它有1条记录,应该有10个记录。创建的文件数量为100个文本文件应该只有10个文本文件每个文件应该有10个记录编辑(浮动)强制转换和(int)强制转换并立即尝试它提供相同的输出生成100个文件,其中每个文件有1个记录它应该有10个记录。对于每个记录,它在10个记录之后创建一个文件,它应该创建一个新文件,新名称为BATCH_n(其中n=1,2,3,4,5,6,7,8,9,10)
$number = intVal($count/10);
$number++;
$log_file_data = $log_filename.'/BATCH_'.$number.'.txt';
file_put_contents($log_file_data, $Batch_msg . "\n", FILE_APPEND);
function wh_BATCH($Batch_msg,$count)
{
$log_filename = "BATCH";
if (!file_exists($log_filename))
{
// create directory/folder uploads.
mkdir($log_filename, 0777, true);
}
$number = intVal($count/10);
$number++;
$log_file_data = $log_filename.'/BATCH_'.$number.'.txt';
file_put_contents($log_file_data, $Batch_msg . "\n", FILE_APPEND);
}
<?php
function wh_BATCH($Batch_msg,$count)
{
$log_filename = "BATCH";
if (!file_exists($log_filename))
{
// create directory/folder uploads.
mkdir($log_filename, 0777, true);
}
$number = intVal($count/10);
$number++;
$log_file_data = $log_filename.'/BATCH_'.$number.'.txt';
file_put_contents($log_file_data, $Batch_msg . "\n", FILE_APPEND);
}
for($i=1;$i<=100;$i++)
{
wh_BATCH("hello world ".$i, $i);
}