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

PHP
PHP默认安装产生系统漏洞
ip签名探针
4.与数据库的连接
2.PHP入门
1.PHP简介
随机头像PHP版
自动跳转中英文页面
漂亮但不安全的CTB
3.从实例开始
用PHP 4.2书写安全的脚本
PHP安全配置
如何对PHP程序中的常见漏洞进行攻击
风格模板初级不完全修改教程
优化NFR之一 --MSSQL Hello Buffer Overflow
不用GD库生成当前时间的PNG格式图象的程序
用PHP调用Oracle存储过程
PHP分页显示制作详细讲解
将PHP作为Shell脚本语言使用
MVC模式的PHP实现
编写PHP的安全策略

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 151 ::
收藏到网摘: 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;
}
}
?>
请大家多多指教!