1.PHP起始与结束现在都必需是以<?php .. >这样子来写. 不能再像以前那样<? ...>了.> 是不是?
2.获取参数$_POST['name'],$_GET['pw']的时候都需要在里面加单引号或双引号, 不能像$_POST[name]这样子写了,是吧?请问,升级到PHP5.3后这样的差异还有多少?
我之前写的程序都不能在php5.3下跑了..
自己也是挺长一段时间没有碰PHP了..希望热心的朋友能够罗列出来它们之间的差异或变化吧.!谢谢!
2.获取参数$_POST['name'],$_GET['pw']的时候都需要在里面加单引号或双引号, 不能像$_POST[name]这样子写了,是吧?请问,升级到PHP5.3后这样的差异还有多少?
我之前写的程序都不能在php5.3下跑了..
自己也是挺长一段时间没有碰PHP了..希望热心的朋友能够罗列出来它们之间的差异或变化吧.!谢谢!
POSIX Regex 函数被放弃
magic_quotes_gpc = On/OFF 被废弃(这个影响get/post过来的值)
……
--------------------------------------------------
PHP 5.3.x 中弃用的功能
PHP 5.3.0 新增了两个错误等级: E_DEPRECATED 和 E_USER_DEPRECATED. 错误等级 E_DEPRECATED 被用来说明一个函数或者功能已经被弃用. E_USER_DEPRECATED 等级目的在于表明用户代码中的弃用功能, 类似于 E_USER_ERROR 和 E_USER_WARNING 等级. 下面是被弃用的 INI 指令列表. 使用下面任何指令都将导致 E_DEPRECATED 错误. define_syslog_variables
register_globals
register_long_arrays
safe_mode
magic_quotes_gpc
magic_quotes_runtime
magic_quotes_sybase
弃用 INI 文件中以 '#' 开头的注释.
弃用函数: call_user_method() (使用 call_user_func() 替代)
call_user_method_array() (使用 call_user_func_array() 替代)
define_syslog_variables()
dl()
ereg() (使用 preg_match() 替代)
ereg_replace() (使用 preg_replace() 替代)
eregi() (使用 preg_match() 配合 'i' 修正符替代)
eregi_replace() (使用 preg_replace() 配合 'i' 修正符替代)
set_magic_quotes_runtime() 以及它的别名函数 magic_quotes_runtime()
session_register() (使用 $_SESSION 超全部变量替代)
session_unregister() (使用 $_SESSION 超全部变量替代)
session_is_registered() (使用 $_SESSION 超全部变量替代)
set_socket_blocking() (使用 stream_set_blocking() 替代)
split() (使用 preg_split() 替代)
spliti() (使用 preg_split() 配合 'i' 修正符替代)
sql_regcase()
mysql_db_query() (使用 mysql_select_db() 和 mysql_query() 替代)
mysql_escape_string() (使用 mysql_real_escape_string() 替代)
废弃以字符串传递区域设置名称. 使用 LC_* 系列常量替代.
mktime() 的 is_dst 参数. 使用新的时区处理函数替代.
弃用的功能: 弃用通过引用分配 new 的返回值.
调用时传递引用被弃用.
---------------------------------------------------------
PHP 5.3.x 保留的功能
is_a() 函数被保留. 它不再抛出 E_STRICT 错误. -----------------------------------------------------
新特性
PHP 5.3.0 提供了广泛的新特性: 添加了命名空间的支持.
添加了静态晚绑定支持.
添加了跳标签支持.
添加了原生的闭包(Lambda/匿名函数)支持.
新增了两个魔术方法, __callStatic 和 __invoke.
添加了 Nowdoc 语法支持, 类似于 Heredoc 语法, 但是包含单引号.
使用 Heredoc 来初始化静态变量和类属性/常量变为可能.
可使用双引号声明 Heredoc, 补充了 Nowdoc 语法.
可在类外部使用 const 关键词声明 常量.
三元运算操作符有了简写形式: ?:.
HTTP 流包裹器将从 200 到 399 全部的状态码都视为成功。
动态访问静态方法变为可能.
异常可以被内嵌.
新增了循环引用的垃圾回收器并且默认是开启的.
mail() 现在支持邮件发送日志. (注意: 仅支持通过该函数发送的邮件.)
----------------------------------------------------------其他请看手册“附录——从 PHP 5.2.x 移植到 PHP 5.3.x”
下面列出的是PHP5.3已经不支持的相关函数: ereg();//直接用mb_ereg代替,或是preg_match代替,但是匹配规则需要用/包括起来 eregi();//preg_match代替,在规则后加上i,如:preg_match(“/^(style|style_)(.*)*/i”, $file); ereg_replace(); set_magic_quotes_runtime(); split(); mysql_close(); // 将不支持全部关闭, 需要改为:mysql_close($link);
namespace/静态延迟绑定/lambda函数 这个3个是最主要的
应该是这样,上GOOGLE上查了下,也是这么个意思,主要是在OOP方面更新比较多些!