
命令行方式 在phpDocumentor所在目录下 输入phpdoc –h会得到一个详细的参数表 其中几个重要的参数如下 f 要进行分析的文件名 多个文件用逗号隔开 d 要分析的目录 多个目录用逗号分割 t 生成的文档的存放路径 o 输出的文档格式 结构为输出格式 转换器名 模板目录 例如 phpdoc o HTML:frames:earthli f test php t docs
Web界面生成 在新的phpdoc中 除了在命令行下生成文档外 还可以在客户端浏览器上 *** 作生成文档 具体方法是先把PhpDocumentor的内容放在apache目录下使得通过浏览器可以访问到 访问后显示如下的界面 点击files按钮 选择要处理的php文件或文件夹 还可以通过该指定该界面下的Files to ignore来忽略对某些文件的处理 然后点击output按钮来选择生成文档的存放路径和格式 最后点击create phpdocumentor就会自动开始生成文档了 最下方会显示生成的进度及状态 如果成功 会显示 Total Documentation Time: seconds done Operation Completed!! 然后 我们就可以通过查看生成的文档了 如果是pdf格式的 名字默认为documentation pdf 给php代码添加规范的注释
PHPDocument是从你的源代码的注释中生成文档 因此在给你的程序做注释的过程 也就是你编制文档的过程 从这一点上讲 PHPdoc促使你要养成良好的编程习惯 尽量使用规范 清晰文字为你的程序做注释 同时多多少少也避免了事后编制文档和文档的更新不同步的一些问题 在phpdocumentor中 注释分为文档性注释和非文档性注释 所谓文档性注释 是那些放在特定关键字前面的多行注释 特定关键字是指能够被phpdoc分析的关键字 例如class var等 具体的可参加附录 那些没有在关键字前面或者不规范的注释就称作非文档性注释 这些注释将不会被phpdoc所分析 也不会出现在你产生的api文当中
如何书写文档性注释: 所有的文档性注释都是由/**开始的一个多行注释 在 phpDocumentor里称为DocBlock DocBlock是指软件开发人员编写的关于某个关键字的帮助信息 使得其他人能够通过它知道这个关键字的具体用途 如何使用 PhpDocumentor规定一个DocBlock包含如下信息 功能简述区 详细说明区 标记tag 文档性注释的第一行是功能描述区 正文一般是简明扼要地说明这个类 方法或者函数的功能 功能简述的正文在生成的文档中将显示在索引区 功能描述区的内容可以通过一个空行或者 来结束 在 功能描述区后是一个空行 接着是详细说明区 这部分主要是详细说明你的API的功能 用途 如果可能 也可以有用法举例等等 在这部分 你应该着重阐明你的API函数或者方法的通常的用途 用法 并 且指明是否是跨平台的(如果涉及到) 对于和平台相关的信息 你要和那些通用的信息区别对待 通常的做法是另起一行 然后写出在某个特定平台上的注意事项 或者是特别的信息 这些信息应该足够 以便你的读者能够编写相应的测试信息 比如边界条件 参数范围 断点等等 之后同样是一个空白行 然后是文档的标记tag 指明一些技术上的信息 主要是最主要的是调用参数类型 返回值极其类型 继承关系 相关方法/函数等等 文档注释中还可以使用例如<b><code>这样的标签 详细介绍请参考附录二 一个文档注释的例子 /** * 函数add 实现两个数的加法 * * 一个简单的加法计算 函数接受两个数a b 返回他们的和c * * @param int 加数 * @param int 被加数 * @return integer */ function Add($a $b) { return $a+$b} 生成文档如下 Add integer Add( int $a int $b) [line ] 函数add 实现两个数的加法 Constants 一个简单的加法计算 函数接受两个数a b 返回他们的和c Parameters • int $a 加数 • int $b 被加数 文档标记 文档标记的使用范围是指该标记可以用来修饰的关键字 或其他文档标记 所有的文档标记都是在每一行的 * 后面以@开头 如果在一段话的中间出来@的标记 这个标记将会被当做普通内容而被忽略掉 @access 使用范围 class function var define module 该标记用于指明关键字的存取权限 private public或proteced @author 指明作者 @copyright 使用范围 class function var define module use 指明版权信息 @deprecated 使用范围 class function var define module constent global include 指明不用或者废弃的关键字 @example 该标记用于解析一段文件内容 并将他们高亮显示 Phpdoc会试图从该标记给的文件路径中读取文件内容 @const 使用范围 define 用来指明php中define的常量 @final 使用范围 class function var 指明关键字是一个最终的类 方法 属性 禁止派生 修改 @filesource 和example类似 只不过该标记将直接读取当前解析的php文件的内容并显示 @global 指明在此函数中引用的全局变量 @ingore 用于在文档中忽略指定的关键字 @license 相当于标签中的<a>首先是URL 接着是要显示的内容 例如<a href=”百度</a>可以写作 @license 百度 @link 类似于license 但还可以通过link指到文档中的任何一个关键字 @name 为关键字指定一个别名 @package 使用范围 页面级别的 >define function include 类级别的 >class var methods 用于逻辑上将一个或几个关键字分到一组 @abstrcut 说明当前类是一个抽象类 @param 指明一个函数的参数 @return 指明一个方法或函数的返回指 @static 指明关建字是静态的 @var 指明变量类型 @version 指明版本信息 @todo 指明应该改进或没有实现的地方 @throws 指明此函数可能抛出的错误异常 极其发生的情况 上面提到过 普通的文档标记标记必须在每行的开头以@标记 除此之外 还有一种标记叫做inline tag 用{@}表示 具体包括以下几种 {@link} 用法同@link {@source} 显示一段函数或方法的内容
一些注释规范 a 注释必须是 /** * XXXXXXX */ 的形式 b 对于引用了全局变量的函数 必须使用glboal标记 c 对于变量 必须用var标记其类型(int string bool ) d 函数必须通过param和return标记指明其参数和返回值 e 对于出现两次或两次以上的关键字 要通过ingore忽略掉多余的 只保留一个即可 f 调用了其他函数或类的地方 要使用link或其他标记链接到相应的部分 便于文档的阅读 g 必要的地方使用非文档性注释 提高代码易读性 h 描述性内容尽量简明扼要 尽可能使用短语而非句子 i 全局变量 静态变量和常量必须用相应标记说明
总结 phpDocumentor是一个非常强大的文档自动生成工具 利用它可以帮助我们编写规范的注释 生成易于理解 结构清晰的文档 对我们的代码升级 维护 移交等都有非常大的帮助 关于phpDocumentor更为详细的说明 可以到它的官方网站
lishixinzhi/Article/program/PHP/201311/21093首先,停止MySQL的服务。
开始--运行--services.msc--找到MySql服务,停止
mysql的默认安装位置:
C:\Program
Files\MySQL\MySQL
Server
5.0
然后,修改my.
ini文件
。
进入MySQL的安装目录,找到my.ini,修改datadir的值。
#Path
to
the
database
root
www.2cto.com
datadir="D:/Program
Files/MySQL/MySQL
Server
5.0/Data/"
--
修改这个值即可
最后,启动MySQL服务。
开始--运行--services.msc--找到MySql服务,启动.
MySQL并发能力强 响应速度快 是性能优异的数据库软件PHP是功能强大的服务器端脚本语言 笔者在山西铝厂网站开发中 采用PHP +MySQL 建立了多种应用 下面 以一个简单的聊天室设计为例 介绍PHP+MySQL在网页开发中的应用总体设计
构思与规划:
聊天室的基本原理 就是把每个连上同一网页的用户传送的发言数据储存起来 然后将所有的发言数据传给每一用户 也就是说 用数据库汇集每个人的发言 并将数据库中的数据传给每一个人就实现了聊天室的功能
表设计
首先使用MySQL建立表chat用来储存用户的发言:
mysql>CREATE TABLE chat >(chtime DATATIME >nick CHAR( ) NOT NULL >words CHAR( ))
表中只设定了三个域 chtime是发言的时间 nick为发言者的昵称 words是发言的内容 发言最多 个字符
网页设计
一个最简单的聊天室通常需要两个页框:一个页框是用户输入发言的表单 另一个用来显示大家的发言 所以代码段通常至少需要如下几段:
建立页框的结构(main php)
显示大家发言的程序段(cdisplay php)
传送用户发言的程序段(speak php)
用户登录进入聊天室程序段(login php)
代码设计
以上规划完成后 就可以着手代码设计了 采用php可以非常简明实现以上的功能
用户登录login php 本段代码是一个完全HTML网页
<> <head> <title>用户登录</title> </head> <body>请输入您的昵称<br> <form action= main php method= post target= _self > <input type= text name= nick cols= > <input type= submit value= 登录 > </body> </>
用户提交自己的昵称后 就进入到聊天室 以下的处理交由main php处理
页框主体代码段main php:
<? setcookie( nick $nick) //用cookie记录用户昵称 是常用的传递变量方法 ?> <> <title>山西铝厂聊天室试用版ver </title> <frameset rows= % * > <frame src= cdisplay php name= chatdisplay > <frame src= speak php name= speak > </frameset> </>
显示发言cdisplay php
本代码段的任务是将表chat中的数据取出 显示在页框中 每次刷新时 取数据库中最近的 条发言 同时 为防止数据库无限增大 需设计删除陈旧数据的功能 代码如下
<> <head> <title>显示用户发言</title> <meta equiv= refresh content= url=cdisplay php > </head> <body> <? $link_ID=mysql_connect( main root ) //链接Mysql服务器 服务器名为main 管理员名为root mysql_select_db( abc )//选择数据库 $str= select * from chat ORDER BY chtime//查询字符串 $result=mysql_query($str $link_ID)//送出查询 $rows=mysql_num_rows($result)//取得查询结果的记录笔数 //取得最后 笔发言 并显示 @mysql_data_seek($resut $rows )//移动记录指针到前 笔记录 if ($rows< ) $l=$rowselse $l= //记录总数小于 则最多为该记录数 for ($i= $i<=$l$i++) { list($chtime $nick $words)=mysql_fetch_row($result) echo $chtimeecho echo $nickecho : echo $wordsecho <BR> } //清除库中过时的数据 @mysql_data_seek($result $rows )//移动记录指针到前 笔记录 list($limtime)=mysql_fetch_row($result) $str= DELETE FROM chat WHERE chtime< $limtime $result=mysql_query($str $link_ID)//送出查询字符串 库中只留前 个记录 mysql_close($link_ID) ?> </body> </>
送出发言到数据库speak php
<> <head> <title>发言</title> </head> <body> <? If ($words) { $link_ID=mysql_connect( main root ) mysql_select_db( abc )//数据库名为abc $time=date(y) date(m) date(d) date(h) date(i) (date(s)//取得当前时间 $str= INSERT INTO chat(chtime nick words) values ( $time $nick $words ) mysql_query($str $link_ID)//送出发言到数据库 mysql_close($link_ID) } ?> //输入发言的表单 <form action= speak php method= post target= _self > <input type= text name= words cols= > <input type= submit value= 发言 > </form> </body> </>
lishixinzhi/Article/program/PHP/201311/21516
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)