单独创建一个php文件
我下面的代码一次创建了所有文件,而不是经过1、2、3、4等等单独创建一个php文件,php,html,file,Php,Html,File,我下面的代码一次创建了所有文件,而不是经过1、2、3、4等等 $i = 0; while($i < $pages) { $met = $this->articles(); $myFile = trim($met.".php"); $fh = fopen($myFile, 'w') or die("Can't create files."); $stringData = "<html><head><meta name=\"
$i = 0;
while($i < $pages)
{
$met = $this->articles();
$myFile = trim($met.".php");
$fh = fopen($myFile, 'w') or die("Can't create files.");
$stringData = "<html><head><meta name=\"description\" content=\"" . $met. "\" />
<meta name=\"keywords\" content=\"" . $met . "\" /><h1>" . $met . "</h1>
<base href='http://gumpic.com/'>".$this->show_web("http://gumpic.com")."</html>";
fwrite($fh, $stringData);
fclose($fh);
$i++;
}
echo "We've created your " . $pages . " pages.";
$i=0;
而($i<$pages)
{
$met=$this->articles();
$myFile=trim($met..php”);
$fh=fopen($myFile,'w')或die(“无法创建文件”);
$stringData=”
“$met。”
“$this->show_web(”http://gumpic.com")."";
fwrite($fh,$stringData);
fclose($fh);
$i++;
}
回应“我们已经创建了您的”$页。“页面。”;
我该如何加载页面,在页面上打印哪些页面已经完成?喜欢
另外,是否有任何我可以加快这个脚本。它的速度非常慢,只在大约3分钟内创建了2k个文件,然后给了我一个内部错误。此脚本的速度主要取决于硬盘驱动器的速度。还有操作系统处理打开和写入访问的能力 如果您想要显示进度,只需包含一个
echo(“处理”。$i.“\n”)在while
循环中使用flush()
刷新缓冲区。确保发送echo str\u repeat(“,1024)”,“\n”代码>在脚本开始时强制浏览器显示内容,而无需等待大量数据
使用set\u time\u limit()
为脚本提供更多的处理时间。考虑使用一些模板语言,因为每次分配和链接输出肯定会有糟糕的性能
一些好的图书馆应该是:
- [我通常的选择]李>
- )李>
- [纯PHP,少量用于小型用途]李>
如果您还没有编写命令行工具,请考虑编写命令行工具-回显控制台将比写入屏幕更快。ob_start();
ob_start();
$i = 0;
while($i < $pages)
{
$met = $this->articles();
$myFile = trim($met.".php");
$fh = fopen($myFile, 'w') or die("Can't create files.");
$stringData = '<html>
<head>
<meta name="description" content="' . $met. '" />
<meta name="keywords" content="' . $met . '" />
</head>
<body>
<h1>"' . $met . '"</h1>
<base href="http://gumpic.com/">'.$this->show_web("http://gumpic.com").'</body>
</html>';
fwrite($fh, $stringData);
fclose($fh);
echo 'Created page ' . ($i+1) . '<br/>';
flush();
ob_flush();
$i++;
}
echo "Done generating " . $i . "pages.";
$i=0;
而($i<$pages)
{
$met=$this->articles();
$myFile=trim($met..php”);
$fh=fopen($myFile,'w')或die(“无法创建文件”);
$stringData='1!'
“.$met.””
“.$this->show_web(”http://gumpic.com").'
';
fwrite($fh,$stringData);
fclose($fh);
回显“已创建页面”。($i+1)。“
”;
冲洗();
ob_flush();
$i++;
}
回显“完成生成”$我“页面。”;
如果您想修复这样的错误,您可以。我可以知道这里的用例吗?@NateCorky经过编辑使其成为2K
。您的HTML没有结束
标记,也没有开始或结束
标记。。当你可以生成动态页面时,为什么要生成这么多静态文件?@nick-这些标记在HTML中都是可选的。嗨,我应该把flush放在哪里?它仍然只是显示加载页面。在echo指令之后。flush()强制缓冲区为空,以便将内容发送到浏览器。