设为首页 收藏本站
查看: 657|回复: 0

[经验分享] Netbeans+CodeIgniter搭建PHP开发环境

[复制链接]

尚未签到

发表于 2015-8-26 07:45:50 | 显示全部楼层 |阅读模式
为什么选这样的开发环境
  常见的PHP集成开发环境有Eclipse+PDT,NetBeans,PHPEclipse,Zend Studio,PhpStorm等,我经过多方面的考虑(费用、易用性、功能、活跃度和运行速度等),最后选择了NetBeans。
  另外提一下PhpStorm,这个JetBrains出品的IDE拥有相当好的口碑(至少我查下来是这样),甚至一些大牛们将JetBrains称作“IDE行业的良心”,只是此工具是要掏点钱的,虽然也不是很贵(个人开发者License是99美元),想想如果这个工具能大幅度提高你的工作效率的话,这$99真的不算啥,还比Zend Studio便宜(Zend Studio价格299美元,现在貌似搞促销优惠至149美元)。
  经过大量搜索,我发觉用户群体较多的免费IDE就集中在Eclipse和NetBeans两者中了,选择NetBeans的主要原因是它运行得比Eclipse快,而且快不止一点,我感觉。(也有少数人说NetBeans比Eclipse慢)而别的嘛,基本上半斤八两,例如跨平台等,由于都是用Java开发的工具,都不成问题。
  至于CodeIgniter,选择的理由却很大程度上是项目的需求:时间紧,没太多余力去折腾大的框架,只好选择了这么一个轻量级的,另外也有些技术原因,我认为PHP本身就是需要快速响应和快速处理,一旦引入了重量级的框架,处理管线一长,响应速度势必会变慢,这样的话还不如使用Java EE平台。轻量级的PHP框架中,又以CodeIgniter文档最全,活跃度最高,所以就选择了这个框架。

前提
  我假设你已经架设好AMP(Apache + MySQL + PHP)环境了,如何架设这个环境?其实也很简单,如果你是Windows用户,那么去下载一个wamp server即可,地址:http://www.wampserver.com/,安装很简单,这里就略过了,实在搞不定的话google一下,文章很多。我以前也有过一篇相关的文章,但版本稍微有点旧:http://www.cppblog.com/guogangj/archive/2011/03/14/141786.html

下载和安装NetBeans
  NetBeans是用Java写的,需要JDK,如果你机器上没有安装JDK的话,先去下载一个安装:http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
  上面的链接无效的话直接google一下“JDK”,第一个搜索结果点进去就是。
  然后下载NetBeans(貌似我前面提供的这个链接就直接有JDK+NetBeans,这个我倒是没试过),NetBeans的官方网站:Netbeans.org
  下载的时候选择“PHP”这个打包(Bundle),当然你也可以选择“All”这个打包,只不过大一点。PHP这个打包一共52M,安装在机器上之后大约200M,对于Visual Studio来说,这点尺寸真微不足道,更可贵的是它不会往你系统里无缘无故地安装一大堆没用而且会让你系统越来越慢的服务。
  NetBeans现在的最新版是7.3.1,我下载的就是这个版本,安装其实没什么好说的了,跟安装别的Windows程序没什么两样,安装过程中要你指明JDK的路径。

下载和配置CodeIgniter
  CodeIgniter有一个中文网站:http://codeigniter.org.cn/
  你很快就找到,并且下载好了“CodeIgniter_2.1.3.zip”。现在我们把它安装到NetBeans中去。
  这里废话问一句:不安装行么?——当然行,PHP是解释型语言,所有框架的代码都是没编译过的,你能明明白白看到,配置好放过去就能用。这里要在NetBeans中整合CodeIgniter的目的是为了开发的时候有和CodeIgniter配套的智能提示,提高我们的开发效率。
  这里还需要去下载两个插件,到:https://kenai.com/projects去,搜索“nbphpci”,点进去,点左边的“downloads”,根据你的NetBeans版本,选择不同的下载项目,我选的明显是“7.3.1”,进去后下载这两个文件,一个是“org-netbeans-modules-php-ci.nbm”,另一个是“org-netbeans-modules-php-ci-repository.nbm”。nbm其实是个zip压缩包,你可以解压缩看看里面究竟有些啥的。
  运行NetBeans,“工具” - “插件”,到“已下载”中,点“添加插件”,把上面这两个nbm文件放进去:
DSC0000.png
  点“安装“,完成后关闭。
  “工具” - “选项” - “PHP”,你会发现多了一个“CodeIgniter”的标签(如果没看到,请重启NetBeans试试看),如图,把前面下载到的“CodeIgniter_2.1.3.zip”灌进去,确定确定,完成配置。
DSC0001.png
  现在新建一个PHP项目,你发现可以选择CodeIgniter PHP Web Framework了。
DSC0002.png
  如果你在新建项目的时候没指定这个选项,那你可以打开已创建项目的项目属性,在“框架”中选中,如图:
DSC0003.png
  这样一来,你发觉智能提示出来了:
DSC0004.png

配置调试器
  想想看:PHP运行在Apache服务器上,凭什么你能在NetBeans中设断点把它暂停住?必须有调试器啊,原理大致如此:如果你让PHP解释器把实时运行情况“报告”给IDE并允许IDE控制PHP解释器的运行,那就可以实现调试,这种方法甚至可以远程调试。因此,你必须得对php进行一些配置。打开php.ini:



[xdebug]
;指定调试器,Linux环境下的话就是so库而不是dll库了
zend_extension = "c:/wamp/bin/php/php5.4.3/zend_ext/php_xdebug-2.2.0-5.4-vc9.dll"
;启动调试
xdebug.remote_enable=true
;IDE的IP地址
xdebug.remote_host="127.0.0.1"
;连接至IDE的端口,这个要跟NetBeans中的设置一致
xdebug.remote_port=9000
;指定用于调试的应用层通信协议
xdebug.remote_handler="dbgp"
  我知道还有其它很多配置选项,但我暂时用不着,留默认就是。
  配置好后重启Apache,然后对NetBean进行如图的设置:
DSC0005.png
  配置完成!现在在代码中设个断点(<Ctrl>+<F8>),开启调试(<Ctrl>+<F5>),断点生效了:
DSC0006.png
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-104216-1-1.html 上篇帖子: PHP 仿博客园 个人博客(2) 下篇帖子: PHP获取当前类名、函数名、方法名
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表