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

  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;

  }

  }

  ?>

  请大家多多指教!