php5.3兼容之前php代码的一些改动
最近的php版本好像已经到了5.3吧,有不少东西都出现了变化,从5.3开始,为了更好的向未来版本的php(版本6)过渡,将未来不再支持的函数标记成了deprecated。在代码中使用这些函数,将在页面中显示警告信息。
变更:
配置文件迁移
PHP 5.3 开始,配置文件 php.ini 中的一些配置将会在 PHP 执行时显示过时警告,这些配置将在 PHP6中不再存在,相关功能也将关闭。
1. define_syslog_variables
2. register_globals
3. register_long_arrays
4. safe_mode
5. magic_quotes_gpc
6. magic_quotes_runtime
7. magic_quotes_sybase
函数迁移
涉及到的主要的函数迁移如下:
删除函数 define_syslog_variables 引用
* 删除对函数 define_syslog_variables 的引用
* 将变量 $LOG_ERR, $LOG_USER 等用常量 LOG_USER, LOG_USER, … 替代
ereg, eregi 函数用 preg_match 函数替代
* 这几个函数的函数声明
int ereg ( string $pattern , string $string [, array &$regs ] )
int eregi ( string $pattern , string $string [, array &$regs ] )
int preg_match ( string $pattern , string $subject [, array &$matches [, int $flags [, int $offset ]]] )
* 虽然三者的第一个参数都是字符串,表示一个正则表达式。但是 preg_match 用的是 PCRE(Perl 兼容的正则表达式语法):正则表达式的两端用一个符号做边界,如 “/pattern/” 或者 “#pattern#”
* eregi 是乎略大小写的匹配,转换为 preg_match,第一个参数,用PCRE的参数来乎略大小写,如:”/pattern/i” 或者 “#pattern#i”
* 两者的第三个参数返回的匹配的数据结构不同。ereg 的第三个参数在调用结束后,返回的是一个字符串数组,分别为完整匹配字串和各个子匹配字串。preg_match 返回的是二维数组,相当于 ereg 的字串数组中的字串在
相关文档:
php邮件读取:
程序开发的思路:mail文件:先连接到pop3,读取用户的邮件列表,判断邮件是否读取过,如果没读取过就把邮件加到中转的数据库中。get_mail()函数,读取数据库中的邮件列表,读完后对数据库进行清除。以便能一直读取的都是新的邮件。
代码程序:mail文件:
header("content-type:text/html; charset=utf-8 ......
一、缓存技术:
有些信息比方经常不变的,但是还是能变的信息放在缓存中以加快显示速度,这是很有价值的,所谓的缓存,通俗的理解就是一些保存在服务器端的共用信息.它是于服务器同生死的,我们在保存缓存的时候可以指定下次更新的时间的判断,比方要在5分钟更新一次,可以记录上次更新的时间,和当前时间比较, ......
<?php
class
CacheException
extends
Exception {}
/**
* 缓存抽象类
*/
abstract
class
Cache_Abstract {
/**
&nbs ......
上传jar手机游戏客户端时,因为有些手机如三星的某些机型只能安装jad文件,所以在后台上传需弄一个根据JAR文件自动生成JAD的功能。一般在JAR的文件包内,会有一个游戏信息文件,一般会在META-INF/MANIFEST.MF里,我们只需要读取到这个文件的内容,然后增加一些其它信息,生成JAD文件里就行了。这里需要用到PHP的zip扩展来 ......