RSS
热门关键字:  数据挖掘  数据仓库  商业智能  人工智能  搜索引擎

PHP3/4.1register_global=on转向PHP4.2/3过度方法

来源: 作者:unkonwn 时间:2006-03-06 点击:
由于早期(PHP3/4.1)的uploadfile所产生的变量仅仅为
$uploadfile
$uploadfile_name
$uploadfile_size
$uploadfile_type

而现在(PHP4.2/3)的所产生的变量为
$_FILES["uploadfile"]["name"]
$_FILES["uploadfile"]["size"]
$_FILES["uploadfile"]["type"]
$_FILES["uploadfile"]["temp_name"]
$_FILES["uploadfile"]["error"]


由于新版中增加了error用来判断文件是否上传成功,而老版本则使用
代码:
if(copy($uploadfile,"newpaht/".$uploadfile_name))

来判断文件上传是否成功,因此我们在转换过程中就丢弃了error
相对的,由于新版中丢弃了$uploadfile因此我们必须给此值赋值,而考虑老
版本是使用的copy因此我们将临时文件路径赋于此变量,以协调工作。

代码:
<?php
session_start();
$_vars=Array(
   "_GET",
   "_POST",
   "_COOKIE",
   "_SESSION",
   "HTTP_POST_VARS",
   "HTTP_GET_VARS",
   "HTTP_COOKIE_VARS",
   "HTTP_SESSION_VARS",
   "_FILES",
   "_ENV"
       );//把服务器内的相关变量放在这里
reset($_vars);
for($Tmpa=0;$Tmpa<count($_vars);$Tmpa++){
   extract($$_vars[$Tmpa],"EXTR_PREFIX_SAME",$_vars[$Tmpa]);
   if(strcmp($_vars[$Tmpa],"_FILES")==0){
      while(list($key,$value)=each($$_vars[$Tmpa])){
         ${$key."_name"}   =$_FILES["$key"]["name"];
         ${$key."_type"}   =$_FILES["$key"]["type"];

数据挖掘研究院


         ${$key."_size"}   =$_FILES["$key"]["size"];
         $$key=${$key."_tmpname"}=$_FILES["$key"]["tmp_name"];
      }
   }
}
?>


以上代码经过修改测试,可以正常使用...

使用方法

代码:
<?php
@include("pathtothisfile.php");
?>

最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
匿名?