编译chm格式PHP手册的方法

所属分类: 实用技巧 / 应用技巧 阅读数: 399
收藏 0 赞 0 分享
微软的chm文件格式是很受我们喜爱的,因为它可以把很多HTML文件打包成一个文件,容易传输和分享。而且非常方便易用,支持索引、搜索等。正因为这样,大家通常都使用chm版本的PHP手册。

php.net会定期编译PHP手册,提供各种版本供大家下载,包括chm格式。由于是定期编译,所以我们拿到的永远不会是最新的手册。 如果你想得到最新的手册,就只能自己编译了。而且php.net提供的中文手册不能搜索中文,索引也是乱码。

Haohappy介绍一下编译流程:
1。准备好HTML格式的手册文件。
有两种途径:
1)通过cvs下载手册文件,自己编译出来 (保证最新,但编译过程要花费5个小时左右,生成6000多个文件,要有耐心,唉。)
2)通过php.net下载打包好的html手册,到本地解压缩。

2。下载并安装Microsoft(r) HTML Help Workshop,默认安装在 c:\Program Files\HTML Help Workshop\;

3。通过cvs下载 chm 手册生成脚本文件,位于phpdoc/chm目录下:
common.php
make_chm.README
make_chm.bat
make_chm.php
make_chm_fancy.php
make_chm_spc.gif
make_chm_style.css
  <DIR>          chm
  <DIR>          html

4。编辑make_chm.bat:
     根据你的实际情况修改相应选项:
     rem Path of the PHP CLI executable
     set PHP_PATH=C:\php5\php.exe

      rem Path of the Help Compiler command line tool
      set PHP_HELP_COMPILER="c:\Program Files\HTML Help Workshop\hhc.exe"

      rem The language of the manual to compile
      set PHP_HELP_COMPILE_LANG=zh

      rem The source directory with the original DSSSL made HTML
      set PHP_HELP_COMPILE_DIR=.\html

注意,我们把要用到的HTML文件的目录设置为.\html,所以我们要把所有HTML文件放进去。

5。点击“开始”->“运行”->“cmd”,在命令行下进入相应目录,输入:
make_chm.bat

如果顺利,就会在chm/chm目录下生成chm格式的PHP手册了。

编译带评论(User Notes)的PHP手册:

在phpdoc/htmlhelp目录下,存在另一个chm文件编译系统,用于生成extended CHM文件(即带扩展功能的chm文件)。

使用步骤:

  1. 得到最新的phpdoc html文件; 可以查看xsl/version.xml来得到版本信息,确保编译最新的手册。

2. 在phpdoc目录下:
autoconf
./configure --with-chm=yes
make chm_xsl
  可选参数:    "--with-xsltproc=path" 指定 XSLTProc路径

 3.     将HTML文件放在   phpdoc/htmlhelp/html 目录下(一般情况况执行完1之后会自动复制HTML文件到该目录)

 4. 下载http://cn.php.net/include/mirrors.inc
或者http://cn2.php.net/include/mirrors.inc
放到htmlhelp目录下,与make_chm.bat同目录。

 5. 下载 http://cn.php.net/backend/notes/all.bz2
使用bunzip2 all.bz2命令解压,同样放到htmlhelp目录下。

 6. 把local_vars.php.src重命名为local_vars.php,并根据实际情况修改其中配置。
 7. 最后运行:
make_chm.bat

编译过程中会先生成一个评论相关的chm文件,然后最后生成一个总的chm手册。
更多精彩内容其他人还在看

Win XP系统语言栏丢失解决三例

案例一:   问:一台计算机使用Windows XP操作系统,最近任务栏内无法显示语言栏,我通过“区域和语言选项”里的设置找回了语言栏,重新启动计算机后,问题依旧,请问是什么问题造成的?
收藏 0 赞 0 分享

设计软件中的系统字体应用小技巧

大家都知道,在操作系统的安装目录下有字体库,要使用种字体首先需要安装,但是这会造成字体占用系统盘空间过多。设计使用的字体都不少,怎么说也有几个G,很占资源,下面教大家一个稍微节省资源的方法。
收藏 0 赞 0 分享

Access中字段上自动打开的输入法的解决方法

打开Access数据库时,在里面数据表字段输入数值时,总是会跳出输入法来,很是烦人,在网上找了一下,找到了相应的解决办法:
收藏 0 赞 0 分享

“internet explore 无法打开internet站点 已终止操作”的解决方法

在IE下,当页面还没有加载完全时,如果正在执行的JS代码中含有使用了document.createElement的话,很容易引起页面加载失败.导致提示"internet explore 无法打开internet站点 http://www.xxx.com/xxx/xxx.
收藏 0 赞 0 分享

十个习惯让你精通新的开发技术

这篇文章,是从我的《高效开发人员的五个特征》一文中抽出的一个观点。从我自身的事业和习惯中,我考虑了很多方式怎么样才能有效地学习。
收藏 0 赞 0 分享

小谈RADMIN爆破

最近做渗透测试时常碰到RADMIN一类的东西.. 一碰到此类的程序,一般我都会先看下对方把RADMIN的端口配置成什么..以及相应的PASS(加密过的)
收藏 0 赞 0 分享

动易2006序列号破解算法公布

动易2007就快发布了,把2006的算法公开吧,赚点人气,希望动易不要来找我 。
收藏 0 赞 0 分享

联众密码的逆向算法公布

闲来无事,每天上联众,联众的密码经过加密后保存在本地注册表里,看看是怎么加密的。下了个ollydbg,一路跟踪,发现算法极其简单,给出Delphi版本的解密算法(加密部分有兴趣的一起来讨论)。算法比较粗糟,谁帮优化一下:)
收藏 0 赞 0 分享

关于三种主流WEB架构的思考

做WEB好几年了,各种语言和技术都稍有涉猎。今天心血来潮,突然想总结一下。其实不论什么技术,什么需求,通常WEB开发就是通过WEB前端管理一个或大或小或独立或分布式的关系型数据库,很多东西都是相通的。这里说的WEB架构,是指WEB应用开发中每种技术独有的资源组织形式(包括文件,数
收藏 0 赞 0 分享

一篇关于程序员性格的文章第1/3页

软件开发中人们很少注意个人性格问题。自从 1965年Edsger Dijkstra的有里程碑意义的文章“程序开发是一种人类活动”发表以来,程序员性格被认为是合理的和有成效的研究领域,虽然有些题目如“大桥建筑者的心理”和“对律师行为的研究实验”看起来可能是荒唐的,而在计算机领域,“
收藏 0 赞 0 分享
查看更多