仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2338|回复: 20
打印 上一主题 下一主题

[学习教程] PHP编程:PHP毛病提醒解析

[复制链接]
柔情似水 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:34:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
在学习PHP这六个月里,每看到一个优秀的php脚本,就会兴奋的手舞足蹈,嘴里还不停的说:太酷了,太酷了。呵呵,很幼稚吧,但这可能就是兴趣。     
    先说PHP的毛病信息,来自PHP100服装论坛
    PHP的毛病信息由一下几局部组成
    {毛病类型}: {毛病缘由} in {毛病文件} on {毛病行数}
    申明了在哪一个文件的哪一行中因何种缘由呈现了何种毛病。
    罕见的毛病类型普通有上面几种:
    Parse error(解析毛病)普通都陪伴着Syntax errors(句法毛病) ,申明你的法式不合适PHP的语法。
    它是级别最高的毛病,全部剧本基本不会被履行。
    普通都是由一个表达式短少";" 或各类括号引号不成对引发的。看具体的信息就可以晓得成绩的地点。
    普通句法毛病城市给你提醒一个解析器代号,告知你呈现的成绩是在哪里。好比:
    Parse error: syntax error, unexpected T_STRING in xxx.php on line 9
    T_STRING 是一个解析器代号,望文生义,它代表字符串,良多毛病缘由城市带解析器代号。经由过程它你可以更直接的懂得到毛病的缘由。
    unexpected意思长短预期的,换句话说也就是过剩的。
    更多解析器代号请参考:http://www.php.net/manual/zh/tokens.php 或php手册 英文版中叫:List of Parser Tokens 中文版中叫:解析器代号列表
    下面的毛病的意思是说你的第九行有一个非预期的字符串。
    我的代码:
    1-7: 略
    8 : test(array('a'))
    9 : xxx();
    10 : >
    这个成绩若何处理呢?把第九行的xxx删失落,切实其实合适PHP语法了。
    然而那不是我想要的,实践上是我的第8行短少了一个";",处理举措是在第8行开头加分号。
    注重:这个例子还申明了一个成绩,毛病呈报说是哪行,成绩纷歧定就非在哪行,也多是它的后面一行或几行酿成的。最典范的例子是某法式提醒失足行数在文件的最初一行,你去看,发明那行除“>”之外没有其余字符,这类情形通常为短少引号招致的。你要往后面找不成对的引号或其余甚么标点。假如你非要抬杠,认准了行号不松口,那就不是php的成绩了。
    Fatal Error(致命毛病),仅次于Parsing Error的毛病,履行到产生毛病的行时,剧本会终止运转。
    在法式合适PHP语法的基本上,利用了不决义的函数,或require一个不存在的文件,逝世轮回招致法式履行超时,城市招致fatal error。
    普通体现为:
    Fatal Error: Call to undefined function func() in php100.php on line 某某
    就是说在某某行你挪用了一个不决义的func函数,这时候候普通就是看你是不是忘了包括该包括的文件,是不是写错了函数名,是不是写错了文件名。(PHP100.com)
    Warning(正告),比致命毛病级别稍低,但法式不会由于剧本毛病而终止。
    普通呈现在include一个不存在的文件,或一个法式需求一个参数,然而你没传参数,而且你也没指定参数的默许值。
    Warning视情形可以免呈现,其实没法防止,可以加@强行屏障。
    Notice(告诉),级别最低,普通可以疏忽,不会影响到剧本的运转。多半产生在变量或数组下标不决义的情形。
    注重:多半notice都可疏忽,然而多数的notice也能够会反应出对照严重的成绩。
    好比 Notice: Undefined variable: sql in xxx.php on line xx
    你看到有个变量"sql"不决义,这便可能很风险了,在register_globals=on的情形下,没准这个毛病直接就成了他人操作数据库的后门。
    另外还有一些其余类型的毛病,平常不罕见,我就不多说了。
    总结
    综上所述,PHP的毛病提醒会告知咱们良多工作,为咱们查找毛病供应了极大的便利。好好使用它,会大大的进步咱们的任务效力和任务质量。
    不外,它带来优点的同时,也能够会泄漏办事器的敏感信息,轻易让进击者发明办事器的破绽。
    php开辟情况必定要翻开全体毛病提醒,翻开毛病显示。最大限制的削减变乱的产生。
    临盆情况万万要把毛病显示封闭,改用日记来纪录毛病。别给有心人以无隙可乘。
PHP原始为Personal Home Page的缩写,已经正式更名为 "PHP: Hypertext Preprocessor"。注意不是“Hypertext Preprocessor”的缩写,这种将名称放到定义中的写法被称作递归缩写。
透明 该用户已被删除
沙发
发表于 2015-2-4 02:48:58 | 只看该作者
小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。
乐观 该用户已被删除
板凳
发表于 2015-2-4 14:22:22 | 只看该作者
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
灵魂腐蚀 该用户已被删除
地板
发表于 2015-2-10 01:17:47 | 只看该作者
至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。
兰色精灵 该用户已被删除
5#
发表于 2015-2-23 10:15:26 | 只看该作者
我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:
小妖女 该用户已被删除
6#
发表于 2015-3-7 07:39:01 | 只看该作者
当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标,
分手快乐 该用户已被删除
7#
发表于 2015-3-14 14:26:04 | 只看该作者
个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。
莫相离 该用户已被删除
8#
发表于 2015-3-21 09:44:35 | 只看该作者
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
山那边是海 该用户已被删除
9#
发表于 2015-3-27 01:10:51 | 只看该作者
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
若相依 该用户已被删除
10#
发表于 2015-3-27 11:21:37 | 只看该作者
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
飘灵儿 该用户已被删除
11#
发表于 2015-4-1 09:17:47 | 只看该作者
我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。
12#
发表于 2015-4-10 18:07:24 | 只看该作者
做为1门年轻的语言,php一直很努力。
爱飞 该用户已被删除
13#
发表于 2015-4-15 14:49:13 | 只看该作者
我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。
小女巫 该用户已被删除
14#
发表于 2015-4-21 02:22:44 | 只看该作者
作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。
蒙在股里 该用户已被删除
15#
发表于 2015-4-26 20:10:50 | 只看该作者
php里的数组为空的时候是不能拿来遍历的;(这个有点低级啊,不过我刚被这个边界问题墨迹了好长一会)
变相怪杰 该用户已被删除
16#
发表于 2015-5-6 17:31:11 | 只看该作者
微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox  支持的不是很好,所以能少用还是少用的好。
老尸 该用户已被删除
17#
发表于 2015-5-7 21:47:16 | 只看该作者
其实没啥难的,多练习,练习写程序,真正的实践比看100遍都有用。不过要熟悉引擎
只想知道 该用户已被删除
18#
发表于 2015-5-8 11:25:02 | 只看该作者
基础有没有对学习php没有太大区别,关键是兴趣。
再见西城 该用户已被删除
19#
发表于 2015-6-17 21:13:36 | 只看该作者
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
愤怒的大鸟 该用户已被删除
20#
发表于 2015-6-22 02:52:48 | 只看该作者
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-14 14:12

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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