从上传的文件创建 Base64 而不在本地保存 php
Create Base64 from uploaded file without saving locally php
我需要通过 SOAP 服务发送 base 64 格式的文件。我无法在本地保存文件。有没有一种方法可以转换上传的文件并在不保存的情况下一次性发送?
我最初认为这很简单:
$base64file = base64_encode($_FILES["cv"]["tmp_name"]);
但这似乎不太奏效。
您的代码存在问题,您编码的是文件名,而不是文件内容。
使用它打开文件并将其转换为 base64:
$base64file = base64_encode(file_get_contents($_FILES["cv"]["tmp_name"]));
然后就可以发回客户端了。只需仔细检查 Soap 服务器不会对字符串进行双重 base64 编码。
我需要通过 SOAP 服务发送 base 64 格式的文件。我无法在本地保存文件。有没有一种方法可以转换上传的文件并在不保存的情况下一次性发送?
我最初认为这很简单:
$base64file = base64_encode($_FILES["cv"]["tmp_name"]);
但这似乎不太奏效。
您的代码存在问题,您编码的是文件名,而不是文件内容。
使用它打开文件并将其转换为 base64:
$base64file = base64_encode(file_get_contents($_FILES["cv"]["tmp_name"]));
然后就可以发回客户端了。只需仔细检查 Soap 服务器不会对字符串进行双重 base64 编码。