在C#(ASP.NET MVC)中,我有一个方法可以打开一个文件并将所有文件内容放入字节数组中,如下所示:
byte[] bytes = File.ReadAllBytes(filename);
在PHP方面,我有PHP Slim Framework API方法,该方法是从C#调用的,我做了一个包含这个文件字节数组的POST JSON对象 - >它具有以下属性:
您可以在此处获取此JSON内容的演示:https://justpaste.it/1d8jq
在PHP方面,我做了我收到的json_decode:
$fileObject = json_decode($app->request->getBody());
我在成员中得到相同的字节数组:
$fileBytes = $fileObject->fileBytes;
现在的问题是我如何将这个字节数组保存到Word文件中(它是一个Word文件)。我使用这种方法并保存,但内部有一些非常奇怪的内容/奇怪的符号(不是原始内容)......
$binStr = '';
foreach ($fileBytes as $fileByte)
{
$binStr .= pack('i', $fileByte);
}
$binStr .= "\n";
$fileTemp = '/tmp/'.$filename;
file_put_contents($fileTemp, $binStr);
那么,我如何才能正确保存这些字节(这个字节数组在PHP中具有与C#相同的元素/整数 - 看起来像是正确发送的)?)
如果这很重要,C#部分在Windows Server上,PHP在Linux / CentOS服务器上。
答案 0 :(得分:2)
好像你有一个简单的字节数组作为整数,所以你可以只使用<varno>
<xsl:value-of select="substring-before(../item[1], ' ')"/>
</varno>
而不是pack
。使用一些chr
魔法,这可以写成这样。
array_map