189 8069 5689

php发送接收二进制数据,php 二进制

php中的socket只能传字符串吗?怎么传二进制数据

把二进制字符串先转为byte[] ,接收后再转回来 byte[] msg = Encoding.Default.GetBytes(你的二进制字符串); socket发送 socket接收byte[] string 你的二进制字符串

成都创新互联专业为企业提供东安网站建设、东安做网站、东安网站设计、东安网站制作等企业网站建设、网页设计与制作、东安企业网站模板建站服务,十多年东安做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

php接收二进制文件怎么替换里面的内容

php接收二进制文件怎么替换里面的内容

php接收二进制文件如下:

?php

header('Content-type: text/html; charset=utf-8');

error_reporting(0);

$filename = $_GET["filename"];

$filesize = $_GET["filesize"];

$xmlstr = $GLOBALS[HTTP_RAW_POST_DATA];//$_POST["data"];//

if(empty($xmlstr)) $xmlstr = file_get_contents('php://input');

$raw = $xmlstr;//得到post过来的二进制原始数据

$file = fopen("./upload/".$filename,"w");//打开文件准备写入

fwrite($file,$raw);//写入

fclose($file);//关闭

?

接收的二进制文件中非标准字符(0x7F)的字节被替换为三个字节,比如E2替换为EF 9F A2

现在我想在Php接收到文件之后还原回去,把EF 9F A2替换为E2,请问这个怎么实现?

非常感谢!

PHP 二进制

------解决方案--------------------

他的数据转换规则是这样的:

文件头不变,文件头多长不清楚,图上到0050h都一样的

=7F的字节,因为utf-8也一样,可以认为也转换了utf-8

=80的字节,高位加上F7,再转utf-8,例如E2就变成F7E2然后转utf-8成为EF 9F A2

至少他图中E2/FB/91/B2/81...都满足这个规则

------解决方案--------------------

本帖最后由 xuzuning 于 2013-05-02 15:35:02 编辑

用正则可这样写

假定数据已把存在变量 $s 中,则

$s = preg_replace_callback('/[\xef]../', 'foo', $s);

function foo($r) {

$c = (ord($r[0]{1}) 0x03) 6;

$c += (ord($r[0]{2}) 0x3f);

return chr($c);

}

php后台怎么将二进制存储的图片传送给前端

一般是直接提供资源的链接,他们使用即可。

二进制数据可以通过base64处理后传过去。

浏览器里可以通过 img src="data:image/jpeg;base64,XXX"直接显示图片,

XXX表示图片内容base64_encode后的结果

如何用php模拟浏览器post二进制数据到服务器

* 使用方法:

* $post_string = "app=requestversion=beta";

* request_by_other('url',$post_string);

*/

function request_by_other($remote_server, $post_string)

{

$context = array(

'http' = array(

'method' = 'POST',

'header' = 'Content-type: application/x-www-form-urlencoded' .

'\r\n'.'User-Agent : Jimmy\'s POST Example beta' .

'\r\n'.'Content-length:' . strlen($post_string) + 8,

'content' = 'mypost=' . $post_string)

);

$stream_context = stream_context_create($context);

关于php 接收二进制流转换成图片

比如此类名字叫做imageUpload.class.php

那么首先是要引入该类文件用include("imageUpload.class.php");

第二步是实例化该类$inputimage = new imageUpload("input.jpg","./");

第三部是调用二进制转换成图片的方法了,$inputimage-stream2Image();

实例化该类需要传两个参数,第一个是需要保存的图片名字,第二个是图片保存路径地址。


分享标题:php发送接收二进制数据,php 二进制
本文路径:http://cdxtjz.com/article/hsijeg.html

其他资讯