admin 管理员组文章数量: 1086019
2024年4月23日发(作者:leangoo安装)
维普资讯
第10卷第2期
2 008年6月 辽宁师专学报
Journal of Liaoning Teachers College
V0I.10No.2
Jun.2 0 0 8
【学术研究】
PHP的文件上传技术
张跃旭 ,孙文毅 ,王春来
(1.大连交通大学,辽宁大连116028;2.朝阳师专,辽宁朝阳122000;
3.辽宁省交通高等专科学校,辽宁沈阳110122;4.朝阳市殡葬管理所,辽宁朝阳122000)
摘要:探讨通过使用PHP的文件上传技术,利用HTrP将文件从客户端浏览器传递到服务器,从而更新网
站内容.
关键词:PHP;文件上传;HTTP
中图分类号:TP393.093 文献标识码:A 文章编号:1008—5688(2008)02—0036—02
在网站使用时,客户通常希望能够及时更新网站的内容,如有关公司的最新信息等,解决此类问题的一种方法是使用
FTP上传软件.支持FrP上传有很多种软件,其中最著名的是CuteFTP软件和LeapFTP软件,但有的空间不支持FTP.
另一种方法就是用户在建立网站时,自己设计上传功能,让客户以普通文本的方式上传文件内容.
作为兀P软件的编程语言,PHP一个非常有用的功能是能够支持HTTP方式的文件上传,并且随着PHP的不断完善,
这一功能也越来越完备,能够将文件从客户端浏览器传递到服务器.通常,使用HTML表单来实现这一功能.
为了实现文件上传,需要一些专门用于上传文件的HTML语法,通常表单的源代码如下 】:
<form enetype= multipart/form—data action= upload.php
method= post >
<input type= hidden"name= MAX-FILE—SIZE"value=
</form>
</body>
</html>
此表单为获得更多浏览器的支持,使用了POST方法.
在<form标记中,必须设置属性enctype: multipart/form—data",表单中enctype= multiparr/form—dat"的意思,是设置表 a
单的MIME编码,在默认情况下,MIME编码格式是application/x—www—form—urlencoded,不能用于文件上传,只有使用
multipart/form~data才能完整地传递文件数据,进行下面的操作.这样,服务器就能够知道上传的文件带有常规的表单信
息 .
在<form>标记中,还必须有一个可以设置上传文件最大长度的表单域.这是一个隐藏的域,如:
(input type= hidden ha.rile= MAX—FILE—SIZE value= 2000000 >
表单域的名字一定是 MAX_FILE—SIZE".其值是允许用户上传文件的最大长度值(按字节计算).在这里,可以将其
设置为2 000 000 B(约2 MB).用户可针对自己的应用程序,适当设置其值.
利用此HTML代码,可以完成文件的选择并启动处理脚本.
如果已经知道上传文件的位置及其名称,就可以利用处理功能的脚本将其复制到相应位置.PHP函数库中的FILE函
数库、字符串类型函数库、目录函数库及¥一FILES[]的使用是程序设计人员必须要用到的.脚本代码如下:
<html> //将文件存放在指定/uploads/目录
//判 与文件上传相关的错误代码
{case 1:echo 上传文件的长度超出了约定值 ;
break;
if(is~uploaded-file(¥一FILES[ userfile ][ tmp—name,]))
{echo 不能移动文件到目标目录 ;
exit;}
n s 所指定的最艚
,
CaSe
,
,.
3
echo//打
'
开
文件|
 ̄ ̄ ;牛内容
 ̄fiie, r );
,
3:ech。 文件只被部分上传
口* △ ¥fp fopen
;cI。pn=telnotpsen: f(reSadup(!¥ pI, filesize(¥upfile));
io pen 0 UlJ—llle—l W); ’
;¥n cont ents s trip—tags(¥contents);
。(¥fp, ¥co t。 t。) ’
ease
,
4:ech。 没有上传任何文件 ;
,
//检查MIME类型
}
lo s。【 iP,;
p、’ “ “ ’
{echo'错误的文件类型 ; od 二)
此丧脚本的功能是首先检查返回的错误代码和MIME类型.然后检查要打开的文件是否已经真正被上传而且要求不是一
个本地文件.如果所有的工作进展顺利,可以将上传的文件复制到包含目录中.最后,打开这个文件,使用strip_tags()函
作者简介:张跃旭(薯嚣 2张0跃06旭- 0( 一-192701一),男,辽宁北票市人,讲师,主要从事网站建设及计算机网络安全教学研究
维普资讯
张跃旭,等 PHP的文件上传技术 37
数清除所有HTML标记或P 标记,并保存该文件.决定在产品服务器上使用文件上传功能时,必须确定所使用的PHP
是最新版本,而且要时刻注意PHP的补丁发布.
PHP默认的上传限定的最大值是2 M,如果上传的文件大小超过此设定值,需要调整PHP的一些参数.
(1)file__uploads:是否允许通过HTTP上传文件的开关,默认为ON.(2)upload_tmp—dir:用来说明PHP上传的文
件放置的临时目录,要想上传文件,必须保证服务器没有关闭临时文件和对文件夹的写权限,如果未指定则P}{P使用系统
默认值.(3)uploaCLIma)Lfilesize:允许上传文件大小的最大值,默认为2 M.(4)post_ma)L size:在采用POST方法进行
一
次表单提交中PHP所能接收的最大数据量.如果使用PHP文件上传功能,则需要将此值调整为大于upload_maX-filesize
的值.
参考文献:
[1]Luke W,Laura T.PHP和MySQL Web开发[M].武欣,邵煜译.北京:机械工业出版社,2005.262—278.
(责任编辑 李树东,王 巍)
(上接20页)
K ̄/412+4J2-41- 4J+1+(2-I) (8)
因此,相对于无跨越连接神经网络,有跨越连接的神经网络能以更加简洁的结构逼近神经网络的理想状态.
3.2有跨越连接的一维输入网络的方案
最简单的例子是N=l(只有一个特征x)的网络,其结构如图5所示;无跨越连接时此网络的分界
面见图6.接人跨越连接后,对区域I、
Ⅱ、Ⅲ网络的模拟输出信号g分别为:gI=
口0+口 z一口l一口2,gⅡ=口0+口 z+口l一
口2,gⅢ=口0+口”z+口l+口2.
网络把它们分为两个子区,g≥0和
g<0.由gi、gⅡ、gⅢ等于零可求出三个附加
阀值:.35l=(口l+口2一a0)/口 ,.352=(口2一口1
一口0)/口 ,.353=(一口l一口2一口0)/口 . 图5 跨越连接的一维两层I叫络
l “D1 【I C102 Ill
对于确定性神经网络模型来说,要解决的问题的复杂性可由网络第1层
输出的超平面围成的一些开或闭区中的样本数量来估计.当把神经网络作为
一
种概率模型时,每一标本对应于输入样本总体分布的一个峰值.此时,在
特征空间中的每一区域中,多层网络所划分的不仅是一个标本,而且是标本周围的一个紧致集.对于输入
样本总体为多峰的情况,这一紧致集可由分布密度的等值线来描述,这种类区的数量和复杂程度代表了待
解问题的复杂程度.因此,一个神经网络模型能求解多么复杂的问题,取决于它产生的超平面所能划分的
最大类区数H .对于顺序连接的多层网络来说,网络的功能是随层数和各层单元数单调上升的.这样,结
罔6无跨越连接时网络的分界而
构优化问题(使层数和各层单元数最小化)就是在不影响网络功能的前提下,消除多余的神经元,或者是
对神经元个数加以限制.于是,如图5所示的网络最多有5个阀值,把轴分为6个区域.此时神经网络
(用分段线性方式把特征空间划分的最大区域数)等价于第1层有5个神经元的顺序前馈多层网络.可见,
当解决复杂程度相当的问题时,有跨越连接的网络比顺序连接的网络要简单得多.
上述内容是对一个两层网络中跨越连接的作用进行了分析.同样地,把跨越连接引人多层网络也能带来
结构上的优化.在分析多层网络时,必须知道在N维特征空间中H 个超平面所能划分的最大类区数.研究
Ⅳ一1
结果表明 ,最大类区数  ̄H
由公式  ̄H
.
.
=
 ̄H.一。
+
.
一
。
或者  ̄H
.
=
一
。
+2
.
。
确定.
‘ ‘
综上所述,在传统的多层神经网络中引入跨越连接是必要的,并且具有一定的优越性.
参考文献:
[1]焦李成.神经网络系统理论[M].西安:西安电子科技大学出版社,2005.
[2]加卢什金.神经网络理论[M] 北京:清华大学出版社,2002.
[3]刘耦耕,李圣清,肖强晖.多层前馈人工神经网络结构研究【J].湖南师范大学自然科学学报,2004,27(1):26—30.
[4]C C F.Back—propagaiton D. ̄rd'l netv ̄rks for nonlinear seIf—tLn l adaptive omtrd[J].Ⅱ皿Contrd system^ g亚iI砣,1990,(4):44一铝
[5]王清,马广富,弥曼.一种基于遗传算法的神经网络控制方法研究[J].系统仿真学报,2006,18(4):1070—1072.
(责任编辑李树东,王巍)
版权声明:本文标题:PHP的文件上传技术 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1713827979a653386.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论