我正在尝试执行一些 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 部分中声明了该脚本。我将非常感谢您的见解。
最佳答案
PHP 有一个叫做“时间限制”的东西来处理脚本。 默认值为 30 秒,您可以更改此值:
set_time_limit( int $seconds );
我在尝试处理大约 6.000 个 CSV 时遇到了同样的问题,并用此方法解决了。 希望您觉得这很有用!
关于javascript - HTML看不到Javascript代码; php代码中的执行没有错误就中断了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27914590/