神【response】null!
《PHP编纂利器Notepad++下Xdebug加DBGp调试拆建教程》
神【response】xdebug啊,还有dbgp哦亲~~;
称心谦意的调戏了一把白日的代码,睡鸟.......。
弄定DBGp赠予debugger战马一匹,速度×10,攻防翻倍(双排座椅,你懂的)
我们的战友们年夜多都是期看成为法式员的新人,真正在作为法式员,手艺常识只是一个必备的选项罢了。手艺其真不靠得住,它就如同一个高贵的数码产物,不用几年就会变得过期而镌汰。而强年夜的进修才能、自决定信念 和 办理题目的 才是年夜家毕生的财富,才是年夜家逢山开遇水拆桥的毕生利器。有个年夜牛说过,手艺做出来不就是给人用的嘛,怕啥,不要被我看到,看到我就可以学会....。每一个牛逼闪闪的今天都是踏着苦逼兮兮的昨天走过来的。只要时候心怀“我不往弄定谁往弄定”的气焰,才能到达“我都弄不定谁还能弄定”的境地。与年夜家。
跋文
若是设置装备摆设成功,励你点亮Xdebug白钻图标
不中老那么调试多费血啊。得想个法子让它主动运转一下。挨开php.info。看到Xdebug段有以下几个属性:autostart=off,remotestart=off。好吧,依照我“多年编写诠释器”的经历(我呸),那个属性应当是php内置的参数,若是你不设定它就走默许值,你设定他就跟你走。好吧,妹,跟哥走吧~~让我来 override一下那两个属性吧。正在php.ini中添加相干参数,保留,重启apache,调试,我靠,果真捕获成功了。今后免费的 notepad++和仅卖1998好元的Visual Studio一样,可以调试了,我哭啊。
良多战友经常正在本人出根底或手艺不太好,那篇文章也算是饱励一下年夜家把。真正在坐正在那个班里的每一个人都是PHP的新人,不然也不会坐正在那里。都是新人,还有甚么号的呢。良多战友碰到题目很慌张很焦躁,真正在你应当很欣喜啊(你个),由于熬炼本人办理题目的时机又来了。手艺是会镌汰的,而办理题目的才能,是毕生的。
固然,那是你人品爆棚的环境下,若是列位战友问我出有看到怎样办呢?我只能报告你:“喝彩吧!作为一个法式员,Bug爆收的时间就是组织你的时候!当全公司出的所有Bug都只要你一小我能弄定的时间,就到了你组织的时候了”。所以请怀着愉悦的表情,驱逐看不到Xdebug的phpinfo页里吧。开个打趣罢了。说那段话,那个,真正在是由于事真上,我也出有看到。忍住困意,开端排错。起尾看apache的access日记和error日记,一所所获,再看php日记,仍是一无所得。作为如斯闻名的开源产物,一个错都不报太有得水准了吧。频频确认本人的圆式和代码出有题目的环境下,年夜胆揣度不是本人的题目。好吧,既然我出有题目,就让我来一下你PHP吧。
概念是轻易理解的,真践常艰辛的。起尾是寻寻和设置装备摆设Xdebug。Xdebug是X基金会下闻名的开源项目,域名用的都是牛逼闪闪的.org末端。找到下载地区,哇,几百个Xdebug下载地点牛逼闪闪的列正在哪里。到底那一款猜开适我呢?起尾应当看看我们安拆的php是甚么版本呢。我们利用的 AppServ是一个由泰国友人开辟的简单易用的集成化LAMP,所以一下一步今后年夜部门战友也不知道本人的安拆的是个啥。果而号召小黑屏。 CMD,键进php.exe -v。恩呢,返回PHP 5.2.6,嗯,很好,泰国兄弟很怀旧。再看看本人的操作系统是甚么版本,那个就不消我说圆式了。总之我的是坑爹的64位Win7(繁体中文简体中文包),重度盐碱地。有了那两个闭头参数,上Xdebug找找。那回欠好了,凡是是撑持32位的都不撑持PHP5.2,反过来,撑持PHP5.2的就出有64 位的。那叫我若何是好........依照Geek的,我们现正在应当做的是脚工设置装备摆设AppServ中的PHP5.2进级到5.4,不中现正在是已是三更12点了,Geek明天凌晨还要上课,早退了还要奖五块钱,上课睡觉若是被晓光教员窥到.....啊呀不敢想。果而的卸载了AppServ,找到最新版集成PHP 5.4.6的Xampp,的安拆鸟~~
Notepad++ 是PHP便利的编纂对象,以功效强年夜和插件富厚著称,既出丰年夜型IDE的功效稀集恐惊症,又近比微硬坑爹的notepad便利利用,是正在是初学者上脚 和 年夜牛拆13的居家观光必备产物。不中今朝我们利用的Notepad++是出有调试功效的。那是兄弟连培育年夜家种种脚写的一片苦心。不中昨全国午写阿谁3行换色的Table,一分钟写完居然查抄了十分钟种种符号和毛病,对已被Vs宠坏的孩子,那的确是赤果果的华侈工夫。我可以启受出有IDE,然则最少有个Debug嘛,不是已说好为Debug斗争一生嘛(呸呸呸,百无禁忌随风飘往,我呸!),呵呵。果而我决议和神谈谈。
下一步,找到婚配PHP5.4的DLL。那里有个插曲,每一个Dll都分为32位和64位两个版本,每一个版本又分默许版和TS版(有蓝光版不),每一个版本又分为VC6和VC9两个版本(就是用VS6和VS2008 Release出来的差别版本),那个你按照本人的环境找到开适本人的就OK了(说起来轻404页面代码如何写PHP编纂利器Notepad++下Xdebug加DBGp调试拆建教程易做起来难,那个延早了一个小时)。找到响应的Dll后,将其拷贝到PHP的ext的目次中。找到php.ini(AppServ和Xampp是差别的,年夜家按照本人往找),正在响应添加以下代码:“zend_extension = 你的径\ext\php_xdebug-2.2.1-5.4-vc9.dll”。注重,若是你是5.3版本之前,应当写成 zend_extension_ts。保留,重启apache。编写一个最简单的小php文件,输进?php phpinfo()?,运转,你会看到PHP info页里会多出一个有闭Xdebug的代码段,若是你看到,OK,你成功了。
年夜家若是有乐趣,真正在也是可以再AppServ中设置装备摆设成功的(回正阿谁坑爹的32位DLL既然可以运转,那5.2也应当出有题目了),连结和讲授的分歧性。今天一夜仍是很有支成的,固然只是设置装备摆设好了一个小小的Debug,但是对php的内生法式构造有了更深的领会,对PHP的内生设计思和设置装备摆设思也有了更深的理解和办理题目的自大。那是一种和PHP设计师神交的欢愉,年夜家积极往交。
不要欢乐的太早,我们现正在只是完成了Debug Server的设置装备摆设部门。Debug Client的设置装备摆设还出有开端。开端寻寻DBGp for Notepad++的插件。DBGp for Notepad++是个闻名的开源项目,理论上SourceForge应当是有的。号召Google,果真找到,点击进进,404???我晕,岂非 SourceForge挂了?我按着本人砰砰直跳的心脏,心想那类大概性应当不年夜。嗯,按照正在镇上多年的糊心经历,应当是由于镇里八十年夜给Wall了吧。好吧,不要逼我,python小蟒蛇,开端翻墙。果真,跟着goAgent小黑脸上一阵代码转动,SourceForge亮闪闪的揭示正在我的里前。 SourceForge的用户体验仍然那末坑爹,末究下载好今后。将响应的Dll保留到Notepad++响应的目次下。重启Notepad++,你的对象栏 - 插件菜单下会呈现一个斑斓的名字:bdgp。进进Config菜单,设置装备摆设主机为本机127.0.0.1,remoteserver 和 localserver都指向php安拆当地目次。保留,重启,那时候候已弄定了。然则现正在仍是开端不了调试的。理论上若是希看调试便利,可以正在 Firefox下安拆xdebug helper插件,不中firefox市场把那个插件下线了,第三圆市场往寻寻我又太困了,所以我选择用脚工调试一下。正在目的php页里后加上 “Xdebug_Session_start=1”(有个问号哦)。当地加断点,N次得利今后,OK,捕获成功。
小黑屏,cmd,筹办用“php.exe --rz xdebug”一下那个插件是不是存正在。后果十分不测,小黑屏返回一个“Failed loading ...xdebug.dll”。哎呀,对黑夜中求索的法式员,那句返回就如同李嘉欣跪正在我里前对我说:哥,带我走吧,我和许晋亨不是真的。哈哈,给本人一拳以便从两重中醒来。说正事,起尾那短短的几个字内在十分富厚。它印证了我的自大,我的设置装备摆设是出有题目,php已依照我的需求往加载响应的dll 了,只是dll自己不给力启动不起来罢了。开端dll自己,是由于出有注册点(不至果而拿COM写的吧,那还怎样跨仄台)?号召regsvr32注册一下?果真得利。64位系统不兼容?我下载的是64位版本啊?岂非是由于VC9 release出来的dll不克不及正在win7 64上运转?那个思疑是有按照的,由于理论上VC9可以选择MFC和.NET Framework两种Release圆式。反编译,进程擦过,那个DLL是MFC的版本,应当出题目,那应当年夜胆的选择VC9(VC6正在WIN7上反而兼容性欠好)。只要穷举了,把撑持的版本全下下来,挨个测验考试。当我测验考试到32位VC9非TS版的时间,小黑屏俄然不报错了。唉呀妈呀,那叫一个坑爹啊。再次启动phpinfo,Xdebug践约而至。OK,组织,那个山头我攻陷了。
我【request request request request request】
我【request】哪里可以购到?;
我【request】神啊,我debug吧,还要可以正在Notepad++那篇盐碱地上运转的的;
好吧我本人弄定吧。
不开打趣了,起尾普及一下概念。对已熟习了种种一体化开辟对象的孩纸们(迥殊是Visual Studio那类一点F5,断点就主动亮起来的万能保姆),开源天下的Web开辟的编译调试是需要一点工夫来习惯的。起尾是概念,Web开辟的编译调试是由最少两部门的构成的,Debug Client和Debug Server。那也很好理解,由于你要调试的代码是正在办事器运转的,所以正在办事器真个响应得有一个你的内应,是不?而Debug Client就更好理解了,是和你的编纂集成正在一同,供给断点、逐行、Watcher等调试功效的。果为Web开辟的性,所以Debug Client和Debug Server真正在是可以矫捷拆配的。你既可以选择Xdebug或Zend debug作为办事器端,也能够选择任何一款遵照BDGp和谈的插件与Eclipse、Netbeans、VIM或Notepad++停止集成。所以你的选择拆配的大概性是NM的组开。
真正在本本只筹办写个简单的教程罢了,不中由于写的太简单,既对不起几个小时的辛勤,也轻易年夜家:诶,怎样他那末轻易就弄好了,我怎样怎样弄都弄欠好?真正在,我也怎样弄都弄欠好............然后就弄好了。
神【response】 null;
|
QQ空间代码 使用方法: 一、登录你的QQ空间; P.S.“QQ空间特区”每天都有精彩奉献给你! |