ホームページ > バックエンド開発 > PHPチュートリアル > PHP3.2は複数のファイルのアップロードを実装します

PHP3.2は複数のファイルのアップロードを実装します

小云云
リリース: 2023-03-21 15:56:01
オリジナル
1652 人が閲覧しました

この記事では主に、php3.2 で複数のファイルのアップロードを実装する方法の例を紹介します。

public function upload(){
	    $upload = new \Think\Upload();// 实例化上传类
	    $upload->maxSize   =     3145728 ;// 设置附件上传大小
	    $upload->exts      =     array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型
	    $upload->rootPath  =      './Uploads/'; // 设置附件上传根目录
	    $upload->savePath  =      'slider/'; // 设置附件上传(子)目录
	    // 上传单个文件 
	    $info   =   $upload->uploadOne($_FILES['files']);
	    if(!$info) {// 上传错误提示错误信息
	        $this->error($upload->getError());
	    }else{// 上传成功 获取上传文件信息
	        $url= $info['savepath'].$info['savename'];
	    }
	    return $url;
}
ログイン後にコピー

これは単一ファイルをアップロードする場合のソースコードで、 $info = $upload->uploadOne($_FILES['files']); この位置はファイルのアップロードを単一ファイルに制限します

フロントエンド 入力選択の問題

public function upload(){
	    $upload = new \Think\Upload();// 实例化上传类
	    $upload->maxSize   =     3145728 ;// 设置附件上传大小
	    $upload->exts      =     array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型
	    $upload->rootPath  =      './Uploads/'; // 设置附件上传根目录
	    $upload->savePath  =      'last/'; // 设置附件上传(子)目录
	    // 上传多个文件 
	    $info   =   $upload->upload();
		if(!$info) {// 上传错误提示错误信息
		    $this->error($upload->getError());
		}else{// 上传成功 获取上传文件信息
		    foreach($info as $file){
		        $url .= $file['savepath'].$file['savename'].',';
		    }
		}
	    return $url;
}
ログイン後にコピー

これは複数ファイルのアップロード方法です

の主な違いは、この部分

と$url .= $file['です。 savepath'].$file[ 'savename'].',';この部分の制限

フロントエンドにおける単一ファイルと複数ファイルの違いも非常に大きいです

これが複数ファイルの違いです

 <input type="file" name="files[]" multiple="">
ログイン後にコピー

公式説明

複数のファイルを使用してアップロードする必要がある場合は、フォームを変更して

<input type=&#39;file&#39;  name=&#39;photo&#39;>
ログイン後にコピー

<input type=&#39;file&#39;  name=&#39;photo1&#39;>
<input type=&#39;file&#39;  name=&#39;photo2&#39;>
<input type=&#39;file&#39;  name=&#39;photo3&#39;>
ログイン後にコピー

または

<input type=&#39;file&#39;  name=&#39;photo[]&#39;>
<input type=&#39;file&#39;  name=&#39;photo[]&#39;>
<input type=&#39;file&#39;  name=&#39;photo[]&#39;>
ログイン後にコピー

に変更するだけで、マルチ添付ファイル アップロード システムの両方のファイル アップロード クラスを自動的にアップロードできます。認識された。

複数のファイルをアップロードする場合

1、2、3を区別するのに別の問題があります。 。 。 n input

//获取商品图片路径和详情图片路径
        $str = $this->upload();
        $count1 = count($_FILES[&#39;files1&#39;][&#39;name&#39;]);//获取商品图片上传个数
        $arr = explode(&#39;,&#39;,$str);
        $slider = &#39;&#39;;
        $detail = &#39;&#39;;
        foreach ($arr as $k=>$v){
            if($k+1<$count1){
                $slider .= $v.&#39;,&#39;;
            }else{
                $detail .= $v.&#39;,&#39;;
            }
        }
        $slider = rtrim($slider,&#39;,&#39;);
        $detail = rtrim($detail,&#39;,&#39;);
ログイン後にコピー

関連する推奨事項:

php ファイルアップロードクラスと PHP カプセル化された複数ファイルアップロードクラス共有

複数ファイルアップロードインスタンス分析を実装する PHP メソッド

PHP 単一ファイルと複数ファイルのアップロードinstance_php インスタンス🎜🎜

以上がPHP3.2は複数のファイルのアップロードを実装しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート