当前位置: 首页 > 文章教程  > 计算机与互联网 > 网络编程

7.5return语言结构

9/17/2020 9:37:07 PM 人评论

7.5return语言结构

7.4 自定义函数综合示例

文件上传、下载和数据库连接等功能是目前WEB应用系统的常用功能,可以将这些常用的功能封装成一个函数,方便代码的移植、重用和维护。这里先制作一个实现文件上传功能的upload()函数。在“C:\wamp\www\7\functions”目录下创建fileSystem.php文件,并在该文件中输入下面的代码。

<?php

function upload($file,$filePath){

$error = $file['error'];

switch ($error){

case 0:

$fileName = $file['name'];

$fileTemp = $file['tmp_name'];

$destination = $filePath."/".$fileName;

move_uploaded_file($fileTemp,$destination);

return "文件上传成功!";

case 1:

return "上传附件超过了php.ini中upload_max_filesize选项限制的值!";

case 2:

return "上传附件的大小超过了form表单MAX_FILE_SIZE选项指定的值!";

case 3:

return "附件只有部分被上传!";

case 4:

return "没有选择上传附件!";

}

}

?>

程序中定义了upload()函数,该函数的语法格式为:string upload(array $file,string $filePath)。

upload()函数功能:将FORM表单中选择的上传文件$file上传到目录$filePath下。

upload()函数说明:在使用upload()函数前,须手工创建目录$filePath。

需要实现文件上传功能时,只需要声明upload()函数、调用upload()函数即可。例如使用upload()函数重构“PHP的数据采集”章节中register.php的代码。

( 1 )将“PHP 的数据采集”章节中的 register.html 程序和 register.php 程序复制到目录“C:\wamp\www\7”下,并在目录“C:\wamp\www\7”下创建“uploads”目录存放所有上传文件。

(2)将register.php程序修改为如下代码(粗体字部分为代码的改动部分,其他代码不变)。

<?php

include_once("functions/fileSystem.php");

if(empty($_POST)){

exit("您提交的表单数据超过post_max_size的配置!<br/>");

}

echo "您填写的用户名为:".$_POST['userName'];

……

foreach($_POST['interests'] as $interest){

echo $interest." ";

}

echo "<br/>";

$message = upload($_FILES['myPicture'],"uploads");

echo $message;

echo "<br/>";

echo "上传相片的文件大小不能超过:".$_POST['MAX_FILE_SIZE']."字节";

……

echo isset($_POST['submit1'])?"普通提交按钮":"图像提交按钮";

?>

可以看到使用upload()函数后,程序register.php代码明显简化,并方便了代码的移植、重用和维护。upload()函数只能实现单一文件的上传功能,感兴趣的读者可以完成多文件上传功能的函数。

上一篇:7.3.1自定义函数的定义

下一篇:习题

相关教程

共有条评论 网友评论

验证码: 看不清楚?