ファイルをBase64にエンコードしてJson経由で送信することで、PHP Webサービスにファイルをアップロードしています。デコードされたBase64文字列からファイル名と拡張子を抽出する方法
私はこのコードを使用してサーバ上のデータを復号化しています:$file_content = base64_decode($file,true);
は、今私は$file_content
変数からファイル名と拡張子を抽出したいです。
どうすればいいですか?
UPDATE:ここで私は、ファイルを復号化するために使用されるコードは次のとおりです。
include '../conn.php';
include '../functions.php';
$entityBody = file_get_contents('php://input');
$decodedJson = json_decode($entityBody);
$user_email = $decodedJson->{'email'};
$user_token = $decodedJson->{'token'};
$file = $decodedJson->{'file'}; //This is the encoded content of the file from JSON
$file_content = base64_decode($file,true);
if(!checkStudentAuthorizationOrHigher($user_email,$user_token,$conn))
{
die();
}
//now I want to get $file_content type (extension or MIME type) and
//file name from the $file_content
//I tried the below code but it only gets file path as input parameter and doesn't work this way
echo mime_content_type($file_content);
のみファイルのコンテンツは、(ファイル名や拡張子、私のサービスに送信されません)JSONを通じて私のPHPのWebサービスに与えられ、 。それが役に立つなら、私のアプリケーションのクライアント側はC#Windows FormsアプリケーションとAndroidアプリケーションの両方です。
ファイルをクライアント側と同じファイル名でサーバーに保存します。また、ファイルの種類がサーバー上で許可されていることを確認する必要があります。 (ファイルは.pdf、.jpg、.jpeg、.zip)
変数$file_content
からファイル情報を抽出する方法はありますか?
を取得する機能image_type_to_extensionを使用することができますが、JavaScriptでbase64でエンコードされた文字列にファイル名と拡張子を入れていましたか? – RiggsFolly
あなたのスクリプトで実際に何が起こっているかについての情報はあまりありません。実際に何をしているのかわかるように、私たちといくつかのコードを共有するのはどうですか? – RiggsFolly
あなたの質問から、 '$ file'がファイルの名前かその内容であるかどうかは不明です。明確にしたいかもしれません。 –