今天想将sqlite3数据库里面的文章导出成静态的html文件----每个html文件是一篇文章,并且能够链接 上一篇 和 下一篇、总目录。
SQ:是一些古典名著。
期望的最终效果是:
index.html---->列出书籍 列表
点击每一本书--->进入该书的 文章列表------>链接到书籍列表
点击文章列表中的每一篇,实际进入阅读文章--->链接到上下篇、该书目录
总计千余篇文章。
我原以为能够在1小时内解决的。事实上并不能。
问题不断出现。
总结出来问题及解决办法如下:
1、在php页面为utf8编码,charset为utf8下,php生成目录的函数 mkdir($path,...) 在尝试建立中文目录(文件夹)的时候,目录名会出现乱码。所以应该先将 path 转码:
mkdir(iconv("utf-8","gb2312",$path));
2、如果仍以上述 没有转码下的目录 为父目录,在其下 再新建一个文件,则会得不到预期的效果。
例如:
$fp=fopen($path."/".$id.".html","w");
//<span style="white-space:pre"> </span>$path没有转码,实际生成的文件是:$path.$id.html 该文件名中文部分path是乱码。
//只有在转码的情况下才会得到预期结果:
<pre name="code" class="php">$fp=fopen(iconv("utf-8","gb2312",$path)."/".$id.".html","w");
<span style="white-space:pre"> </span>//完美生成目录 path 下 的文件 $id.html