我试图执行一些PHP代码,然后使用Javascript来获取我的一个PHP变量并使用它以CSV格式打开一个新窗口,其中包含该变量的内容。
这在我的PHP变量相对较小(即1,000个条目)时有效,但是当我在代码中执行它时,例如在数组中有大约20,000个条目,它在下面的PHP代码中停止而不会抛出任何错误。可能是我的问题?昨天我将问题追溯到array_column - 一旦到达那一行,代码就会停止执行。然而,它今天又做了,即使没有这个功能,我也认为必须有一个更大的问题。我已经重新包含了那些array_column()调用,因为我认为它们并不是真正的问题。这是PHP代码:
function generateTextFile(){
$array = $_SESSION["array"];
$hostCol = array_column($array, "host");
$timeCol = array_column($array, "Time");
$col3 = array_column($array, "col3");
$col4 = array_column($array, "col4");
$signalCol = array_column($array, "Signal");
for($x = 0; $x < count($timeCol); $x++){
if(!isset($array[$x]["host"])){
$hostCol[$x] = $_GET['hostname'];
}
else{
$hostCol[$x] = $array[$x]["host"];
}
}
$subArray = array($hostCol, $timeCol, $col3, $col4, $signalCol);
$out = array();
foreach($subArray as $rowkey => $row){ // invert the array
foreach($row as $colkey => $col)
$out[$colkey][$rowkey] = $col;
}
$text = "";
for($x = 0; $x < count($out); $x++){
$curText = implode(",", $out[$x]);
$text = $text . $curText . "<br>";
}
$_SESSION['text'] = $text;
}
在上面的PHP代码中,我有什么问题吗?它只是构建一个数组,然后以CSV格式创建另一个变量。在调用上面的函数之后,我在HTML的部分中声明了脚本。我非常感谢你的见解。
答案 0 :(得分:2)
PHP有一个名为&#34;时间限制&#34;处理脚本。 默认值为30秒,您可以更改:
set_time_limit( int $seconds );
我有同样的问题试图处理大约6.000个CSV,并用这个方法解决了。 希望你觉得这很有用!