Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/250.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/203.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 以字符串形式读取文件的字节_Php_Android - Fatal编程技术网

Php 以字符串形式读取文件的字节

Php 以字符串形式读取文件的字节,php,android,Php,Android,简单的理论问题: 要使用Php将文件上载到服务器,我选择以下机制(如果可能): 读取文件的字节,将其作为简单文本放入字符串中,然后将其作为简单文本消息($\u请求)发布到服务器,然后将此“文本”写入服务器上的新文件 所以我的问题是: 如何读取文件的字节并将其存储在字符串/StringBuilder中,就像它们是简单文本一样?您可以使用文件获取内容它是二进制安全的 $binaryContent = file_get_contents('path/to/file'); 如果您在发送内容时遇到问题,

简单的理论问题:

要使用Php将文件上载到服务器,我选择以下机制(如果可能):

读取文件的字节,将其作为简单文本放入字符串中,然后将其作为简单文本消息($\u请求)发布到服务器,然后将此“文本”写入服务器上的新文件

所以我的问题是:


如何读取文件的字节并将其存储在字符串/StringBuilder中,就像它们是简单文本一样?

您可以使用
文件获取内容
它是二进制安全的

$binaryContent = file_get_contents('path/to/file');
如果您在发送内容时遇到问题,而不是对其进行编码:

$binaryContent = base64_encode($binaryContent);
但我会使用curl上传一个文件:

来自php.net


你想找到文件的大小吗???你可以通过ajax调用将内容发送到服务器,但是使用javascript,访问本地文件将很困难字节的实际含义是什么?对不起,现在明白你的意思了!但你的问题有点让人困惑,这不是个好主意。发送文件位置。然后上传。首先搜索一下如何从android上传文件。对不起,我没有提到我想从android发送到服务器好吧,也许这篇文章对你有帮助,我查看了这篇文章:但我想添加一个额外的Id(文本名)dos.writeBytes(两个连字符+边界+lineEnd);dos.writeBytes(“内容处理:post数据;名称=上载文件;文件名=“+exsistingFileName+”“+lineEnd”);dos.writeBytes(lineEnd);通过Php侧边的$_请求获取它是的,这正是我想要的,谢谢,但是在这里的帖子之后,我如何才能添加一个字符串作为Extrados.writeBytes(“自定义消息”);Php端$\u请求获取“自定义消息”?
/* http://localhost/upload.php:
print_r($_POST);
print_r($_FILES);
*/

$ch = curl_init();

$data = array('name' => 'Foo', 'file' => '@/home/user/test.png');

curl_setopt($ch, CURLOPT_URL, 'http://localhost/upload.php');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

curl_exec($ch);