比较常用的几个PHP开发工具
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了比较常用的几个PHP开发工具相关的知识,希望对你有一定的参考价值。
1、浏览器扩展组件工具(Firefox扩展)--
Firephp FirePHP是一款基于Firebug的扩展,phpLangEditor 一款PHP函数库解释工具。 PHP Lookup :是一个内置的搜索栏,以帮助您快速查找引用的PHP语法。 PHP ManualSearch :一个方便的搜索栏,从您的Web浏览器中搜索官方PHP文档。
2、PHP代码调试工具--
Webgrind Webgrind完美支持PHP 5,安装迅速简便,可以跨越多个平台运行。 Xdebug Xdebug是使用极为广泛的PHP代码调试工具,它提供大量的工具帮助你找出程序中潜在的BUG,并且它得到了很多PHP开发工具的支持,以做为专门的测试工具继承在这些开发工具中,比如PHPEclipse、phpDesigner等。
3、PHP框架支持--
Dwoo :PHP5 的模板引擎。CodeIgniter 用于敏捷软件开发的PHP框架。 YII Framework :一个高性能的基于组件的PHP框架。 NetBeans :强大的PHP扩展框架支持集,拥有完善的GUI界面,独自成为一款强大的PHP开发工具。 Solar symfony :一个开源的PHP Web框架,加速Web应用程序开发的创建与维护。
4、PHP代码测试、优化工具--
PHPUnit :一款基于PHP 5的JUnit组件测试工具。 SimpleTest SimpleTest是一款高度集成的PHP代码测试工具。 Selenium :一款专业全自动WEB站点PHP代码测试工具,比较侧重的UI输入输出数据测试。PHP_CodeSniffer dBug 一款专注于测试类、对象、数组以及XML文件的PHP工具。 PHP Profile Class
5、PHP扩展、工具集、类库支持--
SimplePie 此工具可用于PHP RSS解析。 html Purifier :此工具可以用来移除所有恶意代码(XSS),而且还能确保你的页面遵循W3C的标准规范。 TCPDF :一个可以用于快速生成PDF文件的PHP5函数包。 htmlSQL :一组可以使你方便的对HTML和XML内容方便的使用类似SQL语句进行检索的PHP类集。
6、PHP集成开发环境(IDE)、编辑器--
PHPEclipse 一个强大的Eclipse环境下开发PHP的插件,包括的主要功能有:PHP语法分析,调试,代码格式化,大纲视图,代码模板定制等。 PhpED 一套Windows环境下的PHP集成开发环境。phpDesigner 一款轻量级的PHP集成开发工具,代码编辑器功能特别强大,支持在线预览。 ZendStudio 一 款Eclipse下优秀的PHP开发环境,适用于开发包含丰富接口的RIAs应用程序。
7、PHP在线工具及资源--
Minify:该工具使用 PHP5 开发,用于合并压缩js/css 文件的应用程序,合并压缩之后的结果可通过 HTTP gzip/deflate 及一些相关头,优化客户端缓存。 HTTP_StaticMerger:CSS和java script文件自动"合并"。 PHP Object Generator 一款PHP代码生成器,它能够为你的PHP4/PHP5应用程序生成简洁和可测试的面向对象代码。
参考技术A phpstrom ,zend常用的几个小函数
用原生js实现的几个比较常用的小函数
1、产生随机色
function color(){
return "rgb("+parseInt(Math.random()*255)+","+parseInt(Math.random()*255)+","+parseInt(Math.random()*255)+")";
}
2、添加类名、移除类名
function hasClass(elements, cName) {
return !!elements.className.match(new RegExp("(\\s|^)" + cName + "(\\s|$)"));
// ( \\s|^ ) 判断前面是否有空格 (\\s | $ )判断后面是否有空格 两个感叹号为转换为布尔值 以方便做判断
};
//添加类名
function addClass(elements, cName) {
if(!hasClass(elements,cName)) {
elements.className += " " + cName;
}
}
//移除类名
function removeClass(elements, cName) {
if(hasClass(elements, cName)) {
elements.className = elements.className.replace(new RegExp("(\\s|^)" + cName + "(\\s|$)"), " ");
//replace方法是替换
}
}
3、判断某天是该年第几天
function dayOfYear(year,month,day){ var a=[0,31,28,31,30,31,30,31,31,30,31,30,31]; if (year%4==0&&year%100!=0||year%400==0) { a[2]=29; } var sum=day; for(var i=0;i<month;i++){ sum+=a[i]; } return sum; }
4、产生5个不重复的数字加入到数组中
//随机数 function getAutoNum(max, min) { return parseInt(Math.random() * (max - min + 1) + min); } function lottery() { var arrayNum = []; while(arrayNum.length < 5) { var num=getAutoNum(23,1),i=0; for (;i<arrayNum.length;i++) { if (arrayNum[i]==num) { break; } } if (i==arrayNum.length) { arrayNum.push(num); } } return arrayNum; }
另一种方法
var array = []; for(var i = 0;; i++) { var num = parseInt(Math.random() * (23 - 0 + 1) + 0); //检验随机数是否重复 var isRepeat = true; //如果重复,继续生成下一个随机数 document.write(num + " "); for(var j = 0; j < array.length; j++) { if(array[j] == num) { isRepeat = false; } } //不重复加入到数组中 if(isRepeat) { array.push(num); } if(array.length == 5) { break; } }
5、获取属性的数值 (去掉单位)
//获取属性的数值 eg:div.style.width的值
function getStyle(obj,attr){
if (obj.currentStyle) {
return obj.currentStyle[attr];//针对IE
} else{
// alert(attr);
return getComputedStyle(obj,false)[attr];//针对除IE外的浏览器
}
}
6、弹性摩擦运动框架
function startMove(iTarget) {
clearInterval(timer);
timer = setInterval(function() {
speed+=(iTarget-div.offsetLeft)/5;
speed*=0.7;
//最佳组合 5和0.7;
//摩擦力
div.style.left = div.offsetLeft + speed + ‘px‘;
}, 20);
}
7、两个对象的碰撞检测
//这个方法的使用前提是:两个对象必须有x,y,w,h属性 function checkCrash(obj1,obj2){ //先求临界值 var disX=obj1.w/2 +obj2.w/2; var disY=obj1.h/2 +obj2.h/2; //计算两个矩形中心点的距离 var centerX=Math.abs((obj1.x+obj1.w/2) -(obj2.x+obj2.w/2)); var centerY=Math.abs((obj1.y+obj1.h/2) -(obj2.y+obj2.h/2)); if (centerX<disX&¢erY<disY) { return true; }else{ return false; } }
以上是关于比较常用的几个PHP开发工具的主要内容,如果未能解决你的问题,请参考以下文章
PHP的几个常用加密函数(转载 https://jellybool.com/post/php-encrypt-functions)