当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP4与PHP3中一个不兼容问题的解决方法

PHP
WASP使用方法简介(3)
MySQL服务器的启动与停止
PHP中如何在输出内容后再输出头信息?
在phpMyAdmin使用用户口令登陆
解决MySQL 4.1乱码问题
PHP中操作MySQL需要注意的问题
distinct去掉mysql中重复值
MySQL权威指南读书笔记(一)
MySQL权威指南读书笔记(二)
MySQL权威指南读书笔记(三)
Mysql权威指南读书笔记(四)
MYSQL权威指南读书笔记
MySQL 的外键与参照完整性: Part 1
在PHP5中使用DOM控制XML(1)
在PHP5中使用DOM控制XML(2)
php数据库备份参考
厂商合推SCA和SDO规范 增强SOA技术合作
MySQL 4.1的编码问题
SELECT 的使用详解
Linux网络备份MYSQL

PHP4与PHP3中一个不兼容问题的解决方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 134 ::
收藏到网摘: n/a

PHP4与PHP3中有些不兼容的地方,但这主要是PHP4中的PHP.ini
中的设置有些不同的地方,这些改变主要是提高PHP4的效率。
其中的改变中,track_vars 的设置通常会是使旧的PHP3程序不能
再运行了,因为在PHP4的扩展设置中把track_vars 的值设为了off
这样旧的PHP3程序中就不能直接用GET,POST,COOKIE从上页传送过来
的变量了。
我这里有一个简单的解决的方法,不用把track_vars 的是设为on,
不过这只是一个权宜办法,以后大家还是用$HTTP_GET_VARS,
$HTTP_POST_VARS and $HTTP_COOKIE_VARS读取这些变量比较好。
下面是一个简单的程序,大家可以加到每个需要读取GET,POST,COOKIE
的变量的页前,就可以直接引用这些变量了。
get.variable.inc.php
<?
if(isset($HTTP_POST_VARS))
{
while ( list( $key, $val ) = each( $HTTP_POST_VARS ) )
{
$$key = $val;
}
}
if(isset($HTTP_GET_VARS))
{
while ( list( $key, $val ) = each( $HTTP_GET_VARS ) )
{
$$key = $val;
}
}

if(isset($HTTP_COOKIE_VARS))
{
while ( list( $key, $val ) = each( $HTTP_COOKIE_VARS ) )
{
$$key = $val;
}
}
?>
请大家多多指教!