【发布时间】:2015-08-06 07:23:30
【问题描述】:
我想在 While 循环中运行一个函数。 不幸的是,它可以正常工作,但并没有达到预期。
我的目标是从 CSV 文件中读出每一行并存储在 MySQL 数据库中。这也完美无缺。
不过,另外,我想让 miteinpflegen 通过数字随机生成一个值。
这里又是我生成数字代码的脚本。
function generateCode($length){
$string = "";
$numbers = "0123456789";
for($i=0;$i < $length;$i++) {
$char = $numbers[mt_rand(0, strlen($numbers)-1)];
$string .= $char;
}
return $string;
}
$gencode = generateCode(8);
效果很好。
这里是我的 while 循环(在我的情况下,$handle 是打开 CSV 文件的 var)
while (($data = fgetcsv($handle, 10000, ";")) !== FALSE) {
$import = "INSERT into jobs(id,link_id,random number) values('NULL','$linkid','$gencode')";
mysql_query($import) or die(mysql_error());
}
但是,既然 CSV 文件的每一行都有自己的随机数,或者更确切地说,这是在每一行 $gencode new 中计算的,我该如何取回它? 目前我为所有行获得一个随机数。
寻求帮助,我非常感激。 只见树木不见森林。
谢谢
【问题讨论】:
-
既然 CSV 文件的每一行都有自己的随机数,我该如何取回它 在循环内移动
$gencode = generateCode(8); -
你好。我已经解决了自己的问题。和我想的一样。我太长了,然后忽略了一些东西。不应仅在 While 循环中打包整个函数“$gencode = generateCode (8);”因此,整个 while 循环应该是这样的。 while (($data = fgetcsv ($ handle, 10000, ";")) == FALSE) { $gencode = generateCode (8); $ import = "插入作业 (id, link_id, randomnumber) 值 ('NULL', '$ linkid', '$gencode')"; mysql_query($import) 或死(mysql_error()); }
-
@SkysTheLimit_81 - 如果下面的答案之一对您有所帮助,请选择它作为您问题的答案,否则如果您自己找到解决方案,您可以将其作为答案发布并稍后接受。
标签: php function loops while-loop