如何在线学习PHP开发(三)文件上传

文件上传

image.png
  • 配置php.ini


    image.png
  • $_FILES


    image.png
  • 文件上传错误代码


    image.png
  • 文件上传代码


    image.png

    image.png
  • 文件上传


    image.png

    image.png

    image.png

    image.png

    image.png
  • rename 
    原始文件被删除
    [图片上传失败...(image-564c0b-1585800082445)]
image.png
image.png
image.png
image.png

image.png
image.png

image.png

images.jianshu.io/upload_images/2294180-5b5745c1ab13deed.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

image.png
  • 多文件上传


    image.png
image.png

image.png
  • 多文件上传之文件数组



    
    多文件上传


多文件上传之文件数组




$err) { if ($err == 0) { // 判断并保存这个文件 if (is_uploaded_file($file['tmp_name'][$key])) { if (move_uploaded_file($file['tmp_name'][$key], UPLOAD_DIR . $file['name'][$key])) { echo '第' . ($key + 1) . '个文件:', $file['name'][$key] . '上传成功
'; } else { $errors[$key] = '文件保存错误'; } } else { $errors[$key] = '不是HTTP POST上传的文件'; } } else { $err_str = '文件上传错误'; switch ($err) { case 1: $err_str = '上传文件的大小超过了upload_max_filesize设置的值'; break; case 2: $err_str = '上传文件的大小超过了表单MAX_FILE_SIZE设置的值'; break; case 3: $err_str = '部分文件被上传'; break; case 4: $err_str = '没有任何上传文件'; break; default: break; } $errors[$key] = $err_str; } } echo '

文件上传结果:

'; if ($errors) { foreach ($errors as $k => $e) { echo '第' . ($k + 1) . '个文件上传失败,失败原因' . $e . '
'; } } else { echo '文件全部上传成功'; } }
ini_set('display_errors','On');//在此php中显示报错信息,我当时安装php时display_errors默认off,有error都不知道,也可以在php.ini修改
可以用find / -name +文件名 找到php.ini
nginx服务器修改php.ini后需要重启php-fpm才能生效
你要转移的文件夹的权限必须要修改:sudo chmod -R 777 文件夹名称,不然会有Permission denied
先查看php-fpm的master进程号 ---master
ps aux|grep php-fpm
重启php-fpm:
kill -USR2  主进程ID        ------------master 进程id
./nginx -t  验证nginx配置文件是否正确
nginx -s reload  修改nginx配置后重新加载配置文件
启动php-fpm:sudo ./php-fpm7.2
/usr/local/php/sbin/php-fpm
  • 多文件上传之不同文件名



    
    多文件上传


多文件上传之不同文件名




$file) { if ($file['error'] == 0) { // 判断并保存这个文件 if (is_uploaded_file($file['tmp_name'])) { if (move_uploaded_file($file['tmp_name'], UPLOAD_DIR . $file['name'])) { echo '第' . ($i + 1) . '个文件:', $file['name'] . '上传成功
'; } else { $errors[$i] = '文件保存错误'; } } else { $errors[$i] = '不是HTTP POST上传的文件'; } } else { $err_str = '文件上传错误'; switch ($file['error']) { case 1: $err_str = '上传文件的大小超过了upload_max_filesize设置的值'; break; case 2: $err_str = '上传文件的大小超过了表单MAX_FILE_SIZE设置的值'; break; case 3: $err_str = '部分文件被上传'; break; case 4: $err_str = '没有任何上传文件'; break; default: break; } $errors[$i] = $err_str; } $i++; } echo '

文件上传结果:

'; if ($errors) { foreach ($errors as $k => $e) { echo '第' . ($k + 1) . '个文件上传失败,失败原因' . $e . '
'; } } else { echo '文件全部上传成功'; } }
image.png

你可能感兴趣的:(如何在线学习PHP开发(三)文件上传)