导航:首页 > 源码编译 > php源码分析工具

php源码分析工具

发布时间:2023-01-25 15:29:34

‘壹’ php接口文档生成工具phpdoctor怎么用

一、phpxref↑
PHPXref是一个易用级的PHP项目文档生成工具,它生成Html的文档—-结构清晰、明了。PHPXref可以方便的在不同平台下(linux with Perl,Win32 with EXE)帮助你生成某一目录下所有php文件的“资源”索引文档。这些“资源”,包括:Class(类)、Function(函数)、Variable(变量)、Constant(常量)…..。PHPXref给我们列出了这些资源的定义与引用的详细情况。我们可以很方便地找到某一个函数(变量)在何处被定义,在何处被调用(引用)。 这里以Wordpress为例,它能Wordpress中所有的函数、变量、常量等分类记录,生成一个HTML网页列表,你可以轻松地在这个列表中找到某个函数在什么位置被定义,在什么位置被引用。如果你是Wordpress插件开发者或者想学习研究Wordpress的人,项目文档的作用比较明显。 PHPXref官方有个已经制作好的Wordpress的分析文档:http://phpxref.com/xref/wordpress/,此外,PHPXref还制作了多种PHP程序的分析文档,有兴趣的可以Google站内搜索一下。 PHPXref的主要功能包括:
文件管理。无论要找什么文件,用它能很快地搜索到,如果你的文件中有符合语法规则的注释,PHPXref还能将它列在文件名的旁边,更容易了解这个文件的功能用途,也不用为了找一个文件翻遍整个文件夹,打开每个文件查找注释了。
函数、变量、常量、类管理。Wordpress内置了多种功能强大的函数、类,无论是字符处理还是远程URL读取等都有现成的函数,但我们往往 不知道这个函数能在Wordpress里面找到,现在容易多了,搜索一下就找到了,如果在开发过程中遇到某个Wordpress函数,不知道它是干什么用 的,这时候就得找到这个函数在哪里定义的,可是Wordpress里面上百个文件上哪找去?还是用PHPXref好了。
文件包含管理。Wordpress中需要很多 include,require包含别的文件,但偶尔也会遇到重复包含导致出错,虽然require_once可以解决,但我们也最好要了解某个脚本包含 了哪些文件,要调用这个文件时也心中有数。PHPXref提供了每个文件的包含文件列表和被包含的文件。
源代码高亮。这个功能也是比较实用的,但在实际测试中偶尔会出错。
出色的关联功能。在浏览源代码时,将鼠标指到某个函数名,就会在鼠标旁边出现函数的定义页面,以及被使用次数,此外,还对使用较多的变量名,也是可以直接有个页面显示所有的关于这个变量的使用情况。
简介下windows下其使用过程:
1、下载:官方网站:phpxref官方sf网站
2、使用(以下载windows版本为例):通过以上下载你将得phpxref-0.7-win32.zip压缩包。
步骤一:解压phpxref-0.7-win32.zip。进入phpxref-0.7-win32(注:不用安装的,所以你不用习惯性的去点击.exe可执行文件),你将看一个名为:source的目录—它很关键;
步骤二:复制你的项目文件到上面提到的source目录。
步骤三:双击phpxref.exe;
步骤四:如果项目比较大,请耐心等待数秒钟。
步骤五:进入和source目录同级的output目录,你将看到一些东西。呵呵,双击index.html开始观看你的项目文档,去尝试吧,它能告诉你的很多哦。
PHPXref还提供了在Linux下生成文档的版本,但我很少用,也没有去测试了,我想更多数人需要的还是Win系统下的,如果有需要,把Win下生成的文档可以搬到服务器上去供大家访问。但PHPxref生成的文档实在太大了,一个1.2MB的Wordpress(压缩包),解压后再生成文档,居然要80多 MB的位置!压缩完后也需要接近20MB。 除了用PHPXref来生成已有的Wordpress或其他PHP示范程序(如Discuz)进行学习外,用PHPXref来生成自己制作的PHP 程序,进行检验错误或者是整理代码资源也很有用
二、PHP Doctor↑
安装php支持(若你有php环境支持,可以略去),设置环境变量path,把php 的安装路径加上,比如php 安装在d:/php5/
下载phpdoctor,可以去官网下载把下载的压缩包解压到任何地方
配置phpdoctor, phpdoctor 最基本的配置,复制一个ini文件进行就该就好
//源码路径,比如您的源码路径d:work/phptest,如下设置
source_path=“d:work/phptest”
//生成的html 文档保存路径,默认是保存在当前目录下apidocs(系统自动创建),可以更改为其他目录,比如
d = "apidocs"或 d = "d:work/doc"

生成文档
打开你的cmd,先切换到你的phpdoctor 安装路径,然后执行下面代码
php phpdoc.php <config_file>

‘贰’ 常用的php开发工具有哪些

一、EditPlus

EditPlus功能强大,可以代替记事本的文字编辑器,拥有无限的Undo/Redo、英文拼字检查、自动换行、列数标记、搜寻取代、同时编辑多文件、全屏幕浏览功能。对于很多的PHP程序来说,EditPlus简单好用。同时EditPlus也是一款好用的HTML编辑器,除了颜色标记HTMLTag(同时支持C/C++、Perl、java)外,还有建设完整的HTML和CSS1指令功能,对于习惯用记事本编辑网页的朋友,它可帮你节省一半以上的网页制作时间。

二、PHPDesigner7

PHPDesigner7不仅适用于php开发,也支持其他编程语言,例如:、x、xml、css和javascript、vbscript、java、c#、perl、python等!PHPDesigner7主要针对PHP网页的编写所设计的程序,它内建一系列的指令码、PHP4原始码数据库、语法高亮度显示功能、FTP客户端等,无论您是PHP网页设计高手,或者是刚入门的新手,您都可以使用PHPDesigner7来设计网页程序。

三、Norepad++

Notepad++是一款台湾人开发的一款非常有特色的编辑器,属于开源软件,支持C、C++、Java、C#、XML、HTML、PHP、Javascript编程语言,而且可以免费使用。

主要功能有:

1、内置支持多达27种语法高亮度显示(囊括各种常见的源代码、脚本,值得一提的是,完美支持.nfo文件查看),也支持自定义语言;

2、可自动检测文件类型,根据关键字显示节点,节点可自由折叠/打开,代码显示得非常有层次感!这是此软件特色的体现之一;

3、可打开双窗口,在分窗口中又可打开多个子窗口,允许快捷切换全屏显示模式(F11),支持鼠标滚轮改变文档显示比例等等。

四、PHPCoder

PHPCoder用于快速开发和调试PHP应用程序,它很容易扩展和定制,完全能够符合PHP开发者的个性要求主要功能为:

1.结合了PHP编译器和参考文档,可以对编辑中的PHP脚本进行即时预览;

2.支持高亮显示HTML和PHP代码;

3.自动完成功能,可以自动完成用户自定义代码片断。

五、ZendStudio

ZendStudio是专业开发人员在使用PHP整个开发周期中的集成开发环境(IDE),它包括了PHP所有必须的开发部件。通过一整套编辑、调试、分析、优化和数据库工具,ZendStudio加速开发周期,并简化复杂的应用方案。

ZendStudio主要组件:

1、专业的集成开发环境内置编辑器,调试器,以及帮助文档

2、Windows,Linux,Mac等多个操作系统版本

3、多语言支持

4、专业的编辑器

5、关键字、语法加亮显示(PHP,HTML,XHTML,andJavaScript)

‘叁’ 拿到一个php源码怎么分析它用的是什么框架

如果是单一入口模式的在index.php里的都会有简介
/**
*
**/
如果是自己,或团队开发的自己框架,有的会注明

‘肆’ php开发工具有哪些

总结了几款常用PHP开发工具,希望对你有所帮助。

1、EditPlus
一套功能强大,可取代记事本的文字编辑器,拥有无限制的Undo/Redo、英文拼字检查、自动换行、列数标记、搜寻取代、同时编辑多文件、全屏幕浏览功能。而它还有一个好用的功能,就是它有监视剪贴簿的功能,能够同步于剪贴簿自动将文字贴进EditPlus的编辑窗口中,让你省去做贴上的步骤。另外它也是一个好用的HTML编辑器,除了可以颜色标记HTML Tag (同时支持C/C++、Perl、Java)外,还内建完整的HTML和CSS1指令功能,对于习惯用记事本编辑网页的朋友,它可帮你节省一半以上的网页制作时间,若你有安装IE 3.0以上版本,它还会结合IE浏览器于EditPlus窗口中,让你可以直接预览编辑好的网页(若没安装IE,也可指定浏览器路径)。

2、Zend Studio

Zend Studio 是专业开发人员在使用PHP整个开发周期中唯一的集成开发环境 (IDE),它包括了PHP所有必须的开发部件。通过一整套编辑、调试、分析、优化和数据库工具,Zend Studio 加速开发周期,并简化复杂的应用方案。

3、Norepad++
Notepad++是一款非常有特色的编辑器,是开源软件,可以免费使用。
功能有:
①、内置支持多达27种语法高亮度显示(囊括各种常见的源代码、脚本,值得一提的是,完美支持.nfo文件查看),也支持自定义语言;
②、可自动检测文件类型,根据关键字显示节点,节点可自由折叠/打开,代码显示得非常有层次感!这是此软件最具特色的体现之一;
③、可打开双窗口,在分窗口中又可打开多个子窗口,允许快捷切换全屏显示模式(F11),支持鼠标滚轮改变文档显示比例,等等;
④、提供数个特色东东,如邻行互换位置、宏功能,等等…现在网上有很多文件编辑器,这个却是不可多得的一款,不论是日常使用还是手写编程代码,都能让你体会到它独有的优势和方便。

4、PDT(Eclipse PHP Development Tools)

Eclipse这个集成开发环境只要有插件就可以实现相应功能。PDT这个项目很早就开始进行了。Zend Studio for Eclipse就是基于这个插件的,再加上自己的调试器。大家也可以在Eclipse上使用这个插件,然后自己再去选择调试器来配置自己的开发坏境。至于怎么配置,网上有人写出了自己的配置方法,大家可以自己查阅,这里只是介绍工具,这个暂且按下不表。这里我介绍的一个配置完整的包。这个也是Zend开发的,因为是免费的,所以在使用时自然不能和Zend Studio相比。

‘伍’ 常用的php开发工具有哪些

1、EditPlus

EditPlus是一套功能强大,可取代记事本的文字编辑器,拥有无限制的Undo/Redo、英文拼字检查、自动换行、列数标记、搜寻取代、同时编辑多文件、全屏幕浏览功能。对于很多php程序来说,EditPlus 非常简单好用。同时EditPlus也是一款好用的HTML编辑器,除了可以颜色标记HTML Tag (同时支持C/C++、Perl、Java)外,还内建完整的HTML和CSS1指令功能,对于习惯用记事本编辑网页的朋友,它可帮你节省一半以上的网页制作时间,若你有安装IE 3.0以上版本,它还会结合IE浏览器于EditPlus窗口中,让你可以直接预览编辑好的网页(若没安装IE,也可指定浏览器路径)。

2、 PHPDesigner 7

PHPDesigner 7不仅适用于php开发 ,也支持其他编程语言,例如:html 、xhtml、xml、css和javascript 、vbscript、java、c#、perl、python等!PHPDesigner 7主要针对 PHP 网页的编写所设计的程序,它内建一系列的指令码、PHP4 原始码数据库、语法高亮度显示功能、FTP 客户端等,无论您是 PHP 网页设计高手,或者是刚入门的新手,您都可以使用PHPDesigner 7来设计网页程序。

3、Norepad++

Notepad++是一款台湾人开发的一款非常有特色的编辑器,属于开源软件,支持C、C++、Java、C#、XML、HTML、PHP、Javas cript编程语言,而且可以免费使用。
主要功能有:
①内置支持多达27种语法高亮度显示(囊括各种常见的源代码、脚本,值得一提的是,完美支持.nfo文件查看),也支持自定义语言;
②可自动检测文件类型,根据关键字显示节点,节点可自由折叠/打开,代码显示得非常有层次感!这是此软件特色的体现之一;
③可打开双窗口,在分窗口中又可打开多个子窗口,允许快捷切换全屏显示模式(F11),支持鼠标滚轮改变文档显示比例等等。

4、PHP Coder

PHPCoder用于快速开发和调试PHP应用程序,它很容易扩展和定制,完全能够符合PHP开发者的个性要求 主要功能为:
1. 结合了PHP编译器和参考文档,可以对编辑中的PHP脚本进行即时预览;
2. 支持高亮显示HTML和PHP代码;
3. 自动完成功能,可以自动完成用户自定义代码片断;
4. 标准函数提示;
5. 有专门的工程项目管理器;
6. 对象浏览器搜寻编辑中文件的包含信息,自定义函数,并以树形显示;
7. 支持查找对称的语句标记符;
8. 支持高级搜索和替换;
9. 自带FTP功能;
10. 支持运行和断点调试;
总之,PHPCoder是一个非常实用的,功能强大的编程环境,而且它是免费的!

5、Zend Studio

zend Studio 是专业开发人员在使用PHP整个开发周期中的集成开发环境 (IDE),它包括了PHP所有必须的开发部件。通过一整套编辑、调试、分析、优化和数据库工具,Zend Studio 加速开发周期,并简化复杂的应用方案。
Zend Studio主要组件
1 专业的集成开发环境 内置 编辑器, 调试器, 以及 帮助文档
2 Windows, Linux, Mac 等多个操作系统版本
3 多语言支持
4 专业的编辑器
5 关键字、语法加亮显示 (PHP, HTML, XHTML, and JavaScript)
6 XML & CSS 的关键字、语法加亮显示
7 代码模板
8 支持 PHP 4 and PHP 5
9 代码自动完成功能
10 PHP Code (+PHPDoc) 分析功能
11 内部调试器
12 代码摘录
13 PHP 代码分析
14 远程调试器
15 Remote Profiler
16 数据库连接以及集成查询,适用于MySQL、Oracle 、SQL Server、SQLite、 PostgreSQL
17CVS 集成,方便团队开发

‘陆’ 当前市面上的代码审计工具哪个比较好

第一类:Seay源代码审计系统
这是基于C#语言开发的一款针对PHP代码安全性审计的系统,主要运行于Windows系统上。这款软件能够发现SQL注入、代码执行、命令执行、文件包含、文件上传、绕过转义防护、拒绝服务、XSS跨站、信息泄露、任意URL跳转等漏洞,基本上覆盖常见的PHP漏洞。在功能上,它支持一键审计、代码调试、函数定位、插件扩展、自定会规则配置、代码高亮、编码调试转换、数据库执行监控等数十项强大功能。
第二类:Fortify SCA
Fortify
SCA是由惠普研发的一款商业软件产品,针对源代码进行专业的白盒安全审计。当然,它是收费的,而且这种商业软件一般都价格不菲。它有Windows、Linux、Unix以及Mac版本,通过内置的五大主要分析引擎对应用软件的源代码进行静态分析。
第三类:RIPS
RIPS是一款基于PHP开发的针对PHP代码安全审计的软件。另外,它也是一款开源软件,由国外安全研究员开发,程序只有450KB,目前能下载到的最新版本是0.54,不过这款程序已经停止更新了。它最大的亮点在于调用了PHP内置解析器接口token_get_all,并且使用Parser做了语法分析,实现了跨文件的变量及函数追踪,扫描结果中非常直观地展示了漏洞形成及变量传递过程,误报率非常低。RIPS能够发现SQL注入、XSS跨站、文件包含、代码执行、文件读取等多种漏洞,文件多种样式的代码高亮。

‘柒’ 中文版编写php代码的工具有那些

1. Rephactor

Rephactor是一款命令行重构工具,这是一款自动化工具,允许开发者以一种简洁的方式在不同的代码库中修改源码。
主要功能:
保证重构的可逆性—— 一旦发现问题,代码是可逆的,可以回溯到前一个版本。
查找替换功能—— 普通查找替换,方法重命名,类重命名,正则表达式模式的替换。
所有操作完成后,均基于SimpleTest Aperiplus进行测试,并保证测试的覆盖率。
集成Phemto ,保证类的相关性测试。
2. Scisr
Scisr是一款利用PHP编写的重构工具。项目托管在GitHub上。基于GPL许可证下发行。
使用方法:
类的重命名:
[js] view plain
$ scisr rename-class OldName NewName [files]
修改方法:
[js] view plain
$ scisr rename-method OwningClassName oldMethodName newMethodName [files]
文件重命名:
[js] view plain
$ scisr rename-file old/file_name new/dir/new_file_name [files]
重命名类和文件:
[js] view plain
$ scisr rename-class-file OldClassName NewClassName [files]
3. PHP Refactoring Browser
这是一款PHP 代码的重构工具,通过生成diffs来描述重构的步骤,避免重构过程中的简单错误,该工具非常棒。项目托管在GitHub上。
使用库:
PHP Parser by Nikic
PHP Token Reflection from Ondřej Nešpor
重构浏览器数据主要包含以下几个方面:
补丁——支持基于更改文件操作创建补丁;
重构——包含实际重构域和适配第三方库;
集合——基于PHP数组可靠添加集合语义。目前包含一组类型。
4. PhpStorm
PhpStorm是由JetBrains公司开发的一款PHP IDE富应用,同时支持重构。PhpStorm可随时帮助用户对其编码进行调整,运行单元测试或者提供可视化调试功能。
目前,发布了PhpStorm 7版本,新版本支持PHP5.5;改进PHP语法着色性能;Vagrant、SSH 控制&远程工具;支持Drupal & PHP框架;改进调试和测试性能。
PhpStorm的主要特性:
智能PHP编码编辑器;
代码质量分析;
支持调试/测试;
支持HTML/CSS/JavaScript编辑器;
支持跨平台。
5. Zend Studio

Zend Studio是Zend Technologies开发的PHP语言集成开发环境。支持HTML和JS标签,但只对PHP语言提供调试支持。
主要特性:
具备功能强大的专业编辑工具和调试工具;
支持PHP语法高亮显示、语法自动填充功能,支持语法自动缩排和代码复制功能;
支持书签功能;
内置一个强大的PHP代码调试工具;
支持本地和远程两种调试模式,支持多种高级调试功能。

‘捌’ 服务器程序源代码分析之二:php-fpm

php作为排名top2 互联网开发工具,非常流行,可以参考:中国最大的25个网站采用技术选型方案

php这个名称实际上有两层含义

直接定义:

php-fpm从php5.3.3开始已经进入到php源代码包,之前是作为patch存在的

很少人会去读php本身源代码,我6年前解决php内存泄露问题的时候做了些研究,最近再查看了一番,发现php的开发者很有诚意,这是一款非常出色的服务器软件,支持如下

在linux服务器上,如果不设置 events.mechanism ,那么默认就是采用epoll,所以

php-fpm的IO模型&并发处理能力和nginx是完全一致

nginx以性能卓越闻名,大部分程序员都认为php效率低下,看了源代码,才知道这是传奇啊

在高性能部署的时候,大家往往会针对性的优化nginx 。我自己之前部署php程序也犯了错误,8G内存的server,php-fpm的max children都会设置128+,现在看来太多了,参考nginx的部署:

php-fpm配置为 3倍 cpu core number就可以了

php-fpm稳定性比nginx稍差 这是因为php-fpm内置了一个php解析器,php-fpm进程就和php程序捆绑了,如果php脚本写得不好,有死循环或者阻塞在某个远端资源上,会拖累加载它的php-fpm进程

而nginx和后端应用服务器之间通过网络连接,可以设置timeout,不容易堵死的

php-fpm的fastcgi是短连接 我原以为是长连接的,看了代码才知道也是短连接,处理一个request就关闭掉

php-fpm接口采用fastcgi 非常遗憾,php-fpm和fastcgi完全绑定了,无法独立使用 。只能部署在支持http-fcgi协议转换程序背后(nginx)。其实可以考虑在php-fpm代码包里面引入http协议支持,这样php-fpm可以独立运行,让nodejs无话可说

php-fpm等同于OpenResty OpenResty是一个国人开发的nginx模块,就是在nginx引入lua解释器. 实际上,它和php-fpm的唯一差别就是一个采用php语法,一个用lua,所以OpenResty要作为nginx增强包使用还可以,要选择它作为一个主要编程工具,没有任何必要

从架构上来说,php-fpm已经做到最好,超过大多数 python部署工具,我再也不黑它了

阅读全文

与php源码分析工具相关的资料

热点内容
顶好花app下载怎么找不到 浏览:987
手机命令大全 浏览:806
怎么下邮政银行app 浏览:248
不背单词app单词怎么学习 浏览:479
程序员日常操作搞笑 浏览:380
android检查是否安装 浏览:373
苹果手机编辑pdf文件 浏览:458
android系统名字 浏览:969
安卓手机如何进去有求必应屋 浏览:432
指数除法运算法则底数不同 浏览:894
90压缩干粮09压缩干粮 浏览:516
android线程池框架 浏览:481
手机自带解压能解压哪些文件 浏览:804
linux安装hba驱动 浏览:119
java构造函数new 浏览:668
怎么查家里电器耗电量app 浏览:506
原神一直显示重新连接服务器怎么办 浏览:826
一般用途轴流式压缩机 浏览:926
没学历的怎么学编程 浏览:901
华为的隐藏相册无法加密 浏览:782