查看: 5535|回复: 0
打印 上一主题 下一主题

PHP平时积累的技巧

[复制链接]
跳转到指定楼层
1#
发表于 2007-10-5 15:28:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
台州网址导航
1、获得IP地址

       public function GetIP(){//得IP
                if(getenv("HTTP_CLIENT_IP")&& strcasecmp(getenv("HTTP_CLIENT_IP"),"unknown"))
                        {$ip = getenv("HTTP_CLIENT_IP");}
                else if(getenv("HTTP_X_FORWARDED_FOR")&& strcasecmp(getenv("HTTP_X_FORWARDED_FOR"),"unknown"))
                        {$ip = getenv("HTTP_X_FORWARDED_FOR");}
                else if (getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown"))
                        {$ip = getenv("REMOTE_ADDR");}
                else if(isset($_SERVER['REMOTE_ADDR'])&&$_SERVER['REMOTE_ADDR']&&strcasecmp($_SERVER['REMOTE_ADDR'], "unknown"))
                        {$ip = $_SERVER['REMOTE_ADDR'];}
                else $ip = "unknown";
                return($ip);
        }
2、跳转  <meta http-equiv='refresh' content='3; url =1.php'>

3、 /(^[0-9]|^[1-9][\d]{1,3})($|[\.][\d][1-9]$|[\.][1-9]$)/;   一个价格匹配的正则

4、js 取得 1-10的随机数  document.write(Math.floor(Math.random()*10+1)); //1-10随机数

5、mysql 取得随机记录 SELECT * FROM lzyblog_shop_category ORDER BY RAND() limit 5   

6、js:  onpropertychange当对象属性发生变化的时候触发事件

7、筛选出 年月出来的 SQL
        SELECT regdate FROM `analyse_system` GROUP BY year( regdate ) + month( regdate ) ORDER BY `regdate` DESC
        或是 SELECT regdate FROM `analyse_system` GROUP BY left(regdate,7)  ORDER BY `regdate` DESC

8、strrev 字符串翻转

9、basename(__FILE__); 获得文件名称

10、implode(间隔符号,数组)  explode(间隔符号,字符串)

11、加下划线的 CSS

<a href="#" style="text-decoration:none; border-bottom:#FF0000 1px dashed;">asdfasdf</a>

12、perl 的效率问题
        1)处理文本文件,一般是逐行读入,在这样的循环里,绝不要使用外部shell命令,例如,假如要将分析内容写往其他文件,那么该老老实实的使用perl 自己的写文件句柄的方式,而不要使用shell的"echo $_ >;file"之类的命令,后者比前者慢10000倍。
        2)在匹配正则表达式时,如果匹配里含有"&"字符,那么记得在前面加个"\"转义,否则perl会把匹配的内容复制一份以供以后参考,这导致程序其慢无比;
        3)在匹配正则表达式时,尽量不要使用i选项(区分大小写),请将不区分大小写的区域尽量缩小,例如/ID=something\&/i,如果只对ID不分大小写的话,那么应该这么写:/[Ii][Dd]=something\&/,后者比前者快不止100倍;
        4)在匹配正则表达式时,如果匹配项是固定不变的,那么请使用o选项,这表示只对正则表达式编译一次,例如/jsp/io比/jsp/i好很多。
        5)while循环要比for/foreach循环效率高,
        6)多用小括号,少用$&,$`,$'
        7)多余多行匹配推荐用s/m修饰符,不推荐使用$*

13、linux修改时间
        date -s 07/5/10 &&
        date -s 09:28:00 &&
        #clock -w

14、 checkdate 用 UNIX时间戳验证时间的正确性

15、cvs 的建立
        环境设置:指定CVS库的路径CVSROOT
        
        tcsh
        setenv CVSROOT /path/to/cvsroot(指定CVS路径)
        bash
        CVSROOT=/path/to/cvsroot(指定CVS路径) ; export CVSROOT
        
        初始化:CVS版本库的初始化。
        cvs init
        
        导入库
        $ cd wdir(项目的目录)
        $ cvs import -m "Imported sources" yoyodyne/rdir(期望在CVSROOT下的目录名) yoyo(作者) start
        导入
                $ cd ..
        $ cvs checkout yoyodyne/rdir(项目名)       # Explanation below
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖
台州维博网络(www.tzweb.com)专门运用PHP+MYSQL/ASP.NET+MSSQL技术开发网站门户平台系统等。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

网站推广
关于我们
  • 台州朗动科技(Tzweb.com)拥有多年开发网站平台系统门户手机客户端等业务的成功经验。主要从事:政企网站,系统平台,微信公众号,各类小程序,手机APP客户端,浙里办微应用,浙政钉微应用、主机域名、虚拟空间、后期维护等服务,满足不同企业公司的需求,是台州地区领先的网络技术服务商!

Hi,扫描关注我

Copyright © 2005-2026 站长论坛 All rights reserved

Powered by 站长论坛 with TZWEB Update Techonolgy Support

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