$_FILES:空数组
foreach($array as $key => $value)从数组分离键名和键值
{$key.'_name'}加括号,是告诉PHP解释器,这是一个变量在手册中都有详细说明

解决方案 »

  1.   

    看手册吧,$_Files 是上传文件的一个数组
      

  2.   

    1、这个代码有问题,至少是不完备的。理由等下说
    2、is_array()函数用于判断他的参数是否为一个数组
    3、$_FILES数组在php4.1.0以后用于保存上传文件的各种信息,php4.1.0以前用$HTTP_POST_FILES保存
    4、ADD_addslashes为自定义函数,他用于恢复传入数据的可能被转义的特殊字符,在本例中并无实际意义
    5、形如${$key.'_name'}的式子将产生形如$file_name的变量,假定$key='file'当register_globals=off时
    上传文件的相关信息保存在
    $HTTP_POST_FILES数组 php > 4.0.0

    $_FILES数组 php > 4.1.0
    中,示例代码只给出了$_FILES一种情况,这是不完备之一上传文件的表单中的file对象可以有两种方式命名
    <input type=file name='upfile'>

    <input type=file name='upfile[]'>
    示例代码只处理了第一种命名方式,这是不完备之二通过
    $$key = $val['tmp_name'];
    ${$key.'_name'} = $val['name'];
    后,上传的文件名的变量名仍然不是一个简单变量,无法用简单方式访问。因为['tmp_name']元素是上传后由php产生的临时文件名。这是不完备之三总之,示例代码不可能得到预期的效果!