分类文档:PHP 77篇程序调试时删除或屏蔽跳转页面语句
2009年04月30日 23:00
如果PHP程序中有错误,有时候后面的语句会接着往下运行,而不是运行到错误的地方停止(PHP程序中如果有严重的错误,会停止之后的程序)。如果在报错的后面有跳转页面语句如Header("Location: http://www.auiou.com");或Header("Location: auf.php");或Header("Location: $cg.php");,或者<meta http-equiv=refresh content=0;url=http://www.auiou.com>,往往会直接跳转,不会提示报错。
即使是有经验的老程序员,在程序调试当中,报错也是十分频繁的。比如少写一个大括号,少一个分号,运算符号误写,或者误增加其它字符,都会出现报错。或者因为程序的算法不恰当,出现报错。……
固定链接 | 发表评论(2) | Trackback(0)
我的PHP最佳编程工具是EmEditor
2009年04月14日 12:22
我从事了6年多的编程工作,在这之前做了将近2年的纯HTML+CSS的网页制作和设计。本博客很多次提到的EmEditor,是一款简洁实用的文本工具。对于PHP编程有十分好的支持,几乎到了完美。我的PHP首选编程工具是EmEditor,使用EmEditor做PHP编程,几乎不用再用其它的文本工具。对于PHP编程,EmEditor有这些优点:
- 查找功能十分好,在一个文件里,相同的关键词会用绿色高亮显示,这个功能对于编程来说是十分重要的。查找和替换功能,支持回车符,回车符用\n表示。
- 分割窗口。分割窗口的作用是可以不移动光标,而在另一个窗口查看同一个程序的其它“段落”,这个功能非常常用。EmEditor按F12,同一个文件文件可以分成4个窗口来看。我从来都没有需要使用4个窗口来看,2个窗口很常用。方法是按F12,然后把鼠标拖动到窗口的最下方,则以纵向的方式分割窗口;把鼠标拖动到窗口的最右方,则以横向的方式分割窗口。
- 在PHP程序里,如果网页使用UTF-8格式和语言,BOM(Unicode签名)有一些障碍,所以需要去掉BOM。这些障碍包括如果被include的文件中有BOM,会出现多余的空行;使用header()函数PHP程序会报错,解决方法如http://www.auiou.com/relevant/00000469.jsp。……
固定链接 | 发表评论(21) | Trackback(0)
去掉UTF-8文件的BOM的方法
2009年03月25日 10:56
EmEditor软件,先打开任意一个PHP文件,按Alt+回车,选择“文件”的标签,在“打开时的字符码”,选择“UTF-8”,然后关闭EmEditor。
以后打开任何PHP文件,只要按Ctrl+S,或者Ctrl+E,就可以保存为UTF-8编码的无BOM文件,十分方便。
UltraEdit可以点击“文件→另存为”,格式选择“UTF-8无BOM”,英文网页每次都需要这个操作。否则,在按Ctrl+S时,会被保存为ANSI格式。中文网页,在第一次另存为之后,以后只要按Ctrl+S即可。……
固定链接 | 发表评论(4) | Trackback(3)
如何用PHP编写RSS
2009年03月25日 10:38
实例:http://www.zj7.com/feed/,实际路径:http://www.zj7.com/feed/index.php。创建一个扩展名为.php的文件,在这个.php文件中,开头写入如下这句,PHP文件格式即可转化为XML格式:
<?header("Content-type: text/xml; charset=utf-8");?>……
固定链接 | 发表评论(2) | Trackback(1)
我这样保存用户网址
2009年03月18日 11:25
例如用户发送的网址是http://www.auiou.com/,将它转化为www.auiou.com,去掉http://,以及最后的/。以PHP为例,可以这样做:
<?$url=stripslashes($_POST["url"]);……
固定链接 | 发表评论(5) | Trackback(1)
有关如何学习PHP
2009年03月11日 17:55
3天前有网友问我如何学习PHP,同时也给学习PHP的朋友一点参考。学习编程的方法,就是直接先去做。出现报错,可以查找原因,或在Google和Baidu搜索是否有同样的情况,在测试程序、开发中学习。习惯了,难度并不大。先学习文本数据库、MySQL数据库的写入、读取,这是最核心的部分。对于已经有编程经验的朋友,从原有语言转移到PHP,大约需要1周的时间就可以适应PHP编程。当然,这个时间也因为个人的各种习惯而有差别,不存在聪明与否的原因。在Google搜索“PHP 旧语言的函数”,或者搜索“PHP 要实现的功能或遇到的问题”,就可以找到相应的PHP函数。
没有编程经验的朋友,可以尝试查看别人的程序。事实上,别人的程序是很难读懂的。对于专业的程序员,也是往往很难完全读懂别人的程序,因为一些程序中不容易发现程序员的思路。……
固定链接 | 发表评论(7) | Trackback(0)
一步重装Apache+PHP
2009年03月11日 10:53
所需软件:
MiniApache(2.0.5.2版本,不是MiniApache for PHP这一款,因为这一款的PHP是PHP4);……
固定链接 | 发表评论(29) | Trackback(9)
近期的论坛开发日记
2009年03月02日 00:13
经过大约40天的论坛开发生活,平均每天编程8~10个小时,tgfor即将推出。tgfor是一个封闭的小型社区,您可以自由创建一个小型的论坛(讨论组)。原先的初衷是可以用于朋友圈,以及专门话题的讨论组,或者亲友论坛,家庭论坛(家庭论坛已取消)。目前设定的是论坛新成员加入均需要审核,将来可以根据用户需要来设定论坛是否需要审核新成员。我感兴趣的《一的法则》中文论坛也将会建立,届时网友们将可以在这里谦卑地交流人生的课程。
基本的功能现在已经差不多完成了,目前还剩下删除功能、回收站、邀请码(认证码,无需审核即可加入成员)、短消息等没有完成,近期即将开通网站。论坛的管理模式如前面所提到的,民主,每个论坛默认状态为最多可设置5名管理员,10名版主,10名贵宾,自愿申请,版主和贵宾谦卑和友好地为大家服务。版主和贵宾的管理权限是一样的,可以审核成员的加入,可以解除成员,可以删除违规帖。参与的用户,楼主可以删除回复中的违规帖。……
固定链接 | 发表评论(4) | Trackback(2)
我的分页方法分享
2009年02月25日 19:52
分页是程序永恒的主题,2002年的时候我曾经见过一个留言板的分页程序,但是很难读懂。于是我大约在2005年的时候做了一个很大的改进,推算了另一种简单易读的方法,目前我所有的分页程序都是用此方法,这个算法从来没有出过错,无论是ASP、ASP.net、PHP、JSP,还是CGI,都是可以通用的。例如博客或者论坛程序中,以PHP为例,用此程序可以计算出总页数$p、当前页的起始位置$w1的值和结束位置$w2的值,程序如下:
<?$pa=$_GET["page"]; //或者省略查询ID名$pa=$_SERVER['QUERY_STRING'];……
固定链接 | 发表评论(8) | Trackback(2)
检查程序的括号开始位置简法
2009年02月22日 12:48
如果一个程序有几十行、几百行,如果程序套用3层以上的大括号,检查某个大括号的开始位置,需要花费很多的时间。可以先在本地硬盘制作一个工具,将{替换为{←←!!!,将}替换为!!!→→},如下图:
……
固定链接 | 发表评论(2) | Trackback(0)
2点更正
2009年02月15日 11:26
固定链接 | 发表评论(0) | Trackback(0)
对比3款编程的文本工具
2009年02月11日 09:35
我用过的文本工具主要是EmEditor、EditPlus、UltraEdit这3款,最早不知道这些文本工具的时候我使用记事本,这3款文本工具的功能都比记事本强大、便捷许多。没有一款文本工具是完美的,总是各有各的优点和不足。
EmEditor:……
固定链接 | 发表评论(2) | Trackback(0)
PHP如何避免大片区域的echo
2009年02月09日 14:25
我很喜欢把输出的HTML代码或者文字部分,以直接输出的方式,而不是作为一个字符串使用echo输出。因为当有大片区域的HTML代码的时候,echo的程序写起来比较繁琐,可以简化为<?if (){?>HTML代码<?}?>的形式,这种形式有很大的灵活性,因为在这当中大片区域的HTML代码当中,还可以再包含PHP程序、Javascript等任何代码。例如:
<?if ($aa=="2")……
固定链接 | 发表评论(2) | Trackback(0)
PHP的strpos()函数导致程序执行不正常解决一例
2009年02月01日 21:02
在注册程序,或者留言程序中,判别用户发送的数据中是否有非法的关键词,可以用strpos()函数。用法是strpos("abc", "b"),运行的结果是1。如果是strpos("abc", "a"),运行的结果是0;如果是strpos("abc", "d"),运行的结果是空。如下程序:
if (strpos($ga, $gb)!=0) {} 或者省略为……
固定链接 | 发表评论(5) | Trackback(1)
开始转向PHP
2009年02月01日 01:34
编了6年多的程序。过年的这几天开始正式学习PHP,经过这一个星期的练习,已经初步入门了,比想象中顺利很多,已经可以用PHP编写论坛、博客、网站程序,输出的HTML代码完全保持不变。学习一门新语言最好的方法,就是把以前写过的程序,翻译成这门新语言,绝大多数都有相对应的函数,在Google搜索“PHP 旧语言的函数”,或者搜索“PHP 要实现的功能或遇到的问题”,就可以找到相应的PHP函数。
这几天成功地把我以前写的一些程序,都翻译成了PHP,还用PHP写了一些新的程序。虽然PHP存在着很多的问题,比如substr()和array()等函数不能直接处理中文,不能直接调用中文的文件名,UTF-8编码的网页不能打开Unicode或者ANSI文本数据库,BOM经常会造成报错,等等。但是PHP的函数和数组果然很强大,也容易理解,调用起来也很方便,报错相对较少。如果PHP仅仅用来做英文网页,就不会出现那么多的问题。……
固定链接 | 发表评论(9) | Trackback(0)
郁闷的PHP字符串函数
2009年01月29日 12:49
PHP的substr()是一个十分重要的函数,可以实现对字符串的处理,例如截取字符串的某部分,如把IP地址220.181.20.58替换为220.181.*.*,需要用到substr()函数。让人郁闷的是,substr()不支持中文,会产生乱码。JavaScript的substr()函数和ASP的Mid()函数,无论是UTF-8还gb2312编码,都可以很好地直接支持中文。
另外如$pep="和平海底"; $auf=$pep[1];,$auf的结果是乱码,而不是“平”。如果使用数组array()函数如:$pep=array("和", "平", "海", "底"); $auf=$pep[1];,$auf的结果是仍然是乱码。……
固定链接 | 发表评论(4) | Trackback(0)
PHP的数字千分位增加逗号
2009年01月27日 19:05
固定链接 | 发表评论(6) | Trackback(1)
首页 | 上一页 | 下一页 | 末页 (共3页)