画像ファイルのアップロードに関する以下のユーザー定義関数は、それぞれどのような処理
をする関数ですか?恐らく、「ファイルがアップロードされたかどうかチェック→画像の拡張子を取得→指定の拡張子であるかどうかチェック→保存する新しいファイル名の生成(ユニークな値を設定する)→同名ファイルが存在するかどうかチェック→アップロードされたファイルを指定ディレクトリに移動して保存する」という処理をユーザー定義関数に分けていると思われます。
// 画像関連の処理
$image = get_file('image');
function get_file($name){
if(isset($_FILES[$name]) === true){
return $_FILES[$name];
};
return array();
}
function get_upload_filename($file){
if(is_valid_upload_image($file) === false){
return '';
}
$mimetype = exif_imagetype($file['tmp_name']);
$ext = PERMITTED_IMAGE_TYPES[$mimetype];
return get_random_string() . '.' . $ext;
}
function get_random_string($length = 20){
return substr(base_convert(hash('sha256', uniqid()), 16, 36), 0, $length);
}
function is_valid_upload_image($image){
if(is_uploaded_file($image['tmp_name']) === false){
set_error('ファイル形式が不正です。');
return false;
}
$mimetype = exif_imagetype($image['tmp_name']);
if( isset(PERMITTED_IMAGE_TYPES[$mimetype]) === false ){
set_error('ファイル形式は' . implode('、', PERMITTED_IMAGE_TYPES) . 'のみ利用可能です。');
return false;
}
return true;
}
define('PERMITTED_IMAGE_TYPES', array(
IMAGETYPE_JPEG => 'jpg',
IMAGETYPE_PNG => 'png',
));
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP imageフォルダに、画像をリサイズして保存する時のファイル名を変更したい 1 2023/05/30 11:39
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- PHP $filePath = './user_img/' . $file['name'];? 1 2022/12/10 07:29
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- JavaScript アップロードファイルの種類によって処理を分岐させたいのですが書き方が分からずアドバイスお願いします 4 2023/06/17 19:12
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- PHP PHP MySQLに画像を直接保存 2 2022/06/05 11:50
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- PHP 'member_picture/'に/がありますが 、「スラッシュ」は必要でしょうか? 1 2022/11/27 04:32
- PHP 掲示板を資料を参考にして開発中ですが、画像がアップされません? 1 2022/11/21 06:44
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
onedrive にexcelファイルをア...
-
FTPClientで転送結果(OKかFAIL)
-
PHPでxmlをAPIに送信する方法(P...
-
画面遷移させずに、選択画像フ...
-
「クラウドにアップロード」」...
-
全角ファイル名をアップロード...
-
ファイルのアップロードでパス...
-
ファイルのアップロードがどう...
-
ファイルアップロードの上限を...
-
ファイルのアップロード処理を...
-
「警告:ページの有効期限切れ...
-
曲名をしりたい曲があるのです...
-
ftp_putとftp_fput
-
ファイルアップロードの受信の仕方
-
jsp&サーブレットにてjpgやzip...
-
こちらはただの直列処理ですか?
-
フォントの色を変えるには?
-
form actionで二つ送信先を指定...
-
シェルスクリプトからphpファイ...
-
FTPコマンドでディレクトリごと...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
onedrive にexcelファイルをア...
-
ファイルアップロードの上限を...
-
youtubeに音声のみのmp4ファイ...
-
one drive のアップロード失敗...
-
FTPClientで転送結果(OKかFAIL)
-
VBでクラウドストレージにア...
-
ftpでアップロードが出来ない
-
アップロードできるファイルサ...
-
ファイルをGET送信でアップロー...
-
FTP接続の例外処理
-
「クラウドにアップロード」」...
-
PHP 画像アップロード 重複防止
-
aws cloud9というものを使って...
-
ファイルサイズがpost_max_size...
-
ファイルアップロードしたもの...
-
csvファイルをMySQLにインポー...
-
全角ファイル名をアップロード...
-
ファイルのアップロードで、フ...
-
携帯からファイルアップロード...
-
SmartyでHTMLソースの変更が反...
おすすめ情報