我正面临以下问题。 有一个数组包含几个字符串。我们想要一起追加彼此。内爆功能似乎是解决方案。
以下是数组中的详细数据:
0 -----BEGIN ENCRYPTED PRIVATE KEY-----\n
1 MIICxjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQIR9as3yoyQisCAggA\n
2 MBQGCCqGSIb3DQMHBAjr2e4eD62llQSCAoDOrZP66BNtAZNBhoyRRzPOYOXhBuG4\n
3 ah/505qbWe+SlgSnp1GYS+mgrbMc6OCv6O+gUBMzX/oVHhZeE08CQI/a5V4nDyns\n
4 I+v8c9nYdEPYVSpPQHSwYeA8zQErqBPkzUpG2PCrCSMixC0hfUK+2z8Q1C6rTMnQ\n
5 JYQk7JPo+nNug+xEEETWt02g9vypo2F8NKcQQ3oSKdxmuGYzbIRFMMF9CYb5ruB2\n
6 QcWGbi1Bb+28EozEv8sABOGfOF7SVC1o4IY/n0e/QPL67uPUmdJEi5PfDkoQpmYq\n
7 G9wBEHpMr/XtQcYhHILFWI5a8bPGb/IOuNXUrYURVG6eIU/UJpyJAgoD7lHzKvB5\n
8 n8Sya94Mbdt21oPRJOv8zcgnd4L9wcY9FK3kkWoxM1oFw4Y+lxrcIBKzy2dZF5uc\n
9 8kiCM/25jbUCvKfvuEa8SiAZj7v9BudNwAspqFae/XMMoj5RGzXElEN/A28Je+vZ\n
10 mfMiA2nDtsBXfxDtdxnRchAG2c35wau/HxLO427CcI1CoRyDtUnNPEUmsgIY6cMW\n
11 tcG4mycApdfnSIwgvWpsj/hyEOICDR/q7+APu32Dc4jf6/r6gV0ItgdiNU4wXaNy\n
12 HPjreeL6g/ndfd6LwIyIBdJp4jhvcUWgEGDXUBfkhQJVx+8xZJAYw+sfYXQiFuZd\n
13 fyYv0pOR8F7FIdNC32zIFQpYdZ/SPROTY0FSNGlCUc1L0HX44E9T8bG9F+Lm9jpD\n
14 1ME4SG+XkF9QBAuDGTIVk/qQCK1fIlyrO4t/6hCu9z1+7ZeXxqi2D/D8LOItzTgs\n
15 W2F8oaOxOv5q5d9X/Bneb+8FpNWdACvmW9NtVLaBjI0VO3Ew+xHj8tyd\n
16 -----END ENCRYPTED PRIVATE KEY-----\n
我希望的结果如下:
-----BEGIN ENCRYPTED PRIVATE KEY-----\nMIICxjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQIR9as3yoyQisCAggA\nMBQGCCqGSIb3DQMHBAjr2e4eD62llQSCAoDOrZP66BNtAZNBhoyRRzPOYOXhBuG4\nah/505qbWe+SlgSnp1GYS+mgrbMc6OCv6O+gUBMzX/oVHhZeE08CQI/a5V4nDyns\nI+v8c9nYdEPYVSpPQHSwYeA8zQErqBPkzUpG2PCrCSMixC0hfUK+2z8Q1C6rTMnQ\nJYQk7JPo+nNug+xEEETWt02g9vypo2F8NKcQQ3oSKdxmuGYzbIRFMMF9CYb5ruB2\nQcWGbi1Bb+28EozEv8sABOGfOF7SVC1o4IY/n0e/QPL67uPUmdJEi5PfDkoQpmYq\nG9wBEHpMr/XtQcYhHILFWI5a8bPGb/IOuNXUrYURVG6eIU/UJpyJAgoD7lHzKvB5\nn8Sya94Mbdt21oPRJOv8zcgnd4L9wcY9FK3kkWoxM1oFw4Y+lxrcIBKzy2dZF5uc\n8kiCM/25jbUCvKfvuEa8SiAZj7v9BudNwAspqFae/XMMoj5RGzXElEN/A28Je+vZ\nmfMiA2nDtsBXfxDtdxnRchAG2c35wau/HxLO427CcI1CoRyDtUnNPEUmsgIY6cMW\ntcG4mycApdfnSIwgvWpsj/hyEOICDR/q7+APu32Dc4jf6/r6gV0ItgdiNU4wXaNy\nHPjreeL6g/ndfd6LwIyIBdJp4jhvcUWgEGDXUBfkhQJVx+8xZJAYw+sfYXQiFuZd\nfyYv0pOR8F7FIdNC32zIFQpYdZ/SPROTY0FSNGlCUc1L0HX44E9T8bG9F+Lm9jpD\n1ME4SG+XkF9QBAuDGTIVk/qQCK1fIlyrO4t/6hCu9z1+7ZeXxqi2D/D8LOItzTgs\nW2F8oaOxOv5q5d9X/Bneb+8FpNWdACvmW9NtVLaBjI0VO3Ew+xHj8tyd\n-----END ENCRYPTED PRIVATE KEY-----
我的代码看起来像这样。
$arr = array();
...
$arr = $dataweloaded;
$string = implode($arr);
现在真的很有趣......
我的实际输出不是如上所述。 它只包含1024个字节。
-----BEGIN ENCRYPTED PRIVATE KEY-----\nMIICxjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQIR9as3yoyQisCAggA\nMBQGCCqGSIb3DQMHBAjr2e4eD62llQSCAoDOrZP66BNtAZNBhoyRRzPOYOXhBuG4\nah/505qbWe+SlgSnp1GYS+mgrbMc6OCv6O+gUBMzX/oVHhZeE08CQI/a5V4nDyns\nI+v8c9nYdEPYVSpPQHSwYeA8zQErqBPkzUpG2PCrCSMixC0hfUK+2z8Q1C6rTMnQ\nJYQk7JPo+nNug+xEEETWt02g9vypo2F8NKcQQ3oSKdxmuGYzbIRFMMF9CYb5ruB2\nQcWGbi1Bb+28EozEv8sABOGfOF7SVC1o4IY/n0e/QPL67uPUmdJEi5PfDkoQpmYq\nG9wBEHpMr/XtQcYhHILFWI5a8bPGb/IOuNXUrYURVG6eIU/UJpyJAgoD7lHzKvB5\nn8Sya94Mbdt21oPRJOv8zcgnd4L9wcY9FK3kkWoxM1oFw4Y+lxrcIBKzy2dZF5uc\n8kiCM/25jbUCvKfvuEa8SiAZj7v9BudNwAspqFae/XMMoj5RGzXElEN/A28Je+vZ\nmfMiA2nDtsBXfxDtdxnRchAG2c35wau/HxLO427CcI1CoRyDtUnNPEUmsgIY6cMW\ntcG4mycApdfnSIwgvWpsj/hyEOICDR/q7+APu32Dc4jf6/r6gV0ItgdiNU4wXaNy\nHPjreeL6g/ndfd6LwIyIBdJp4jhvcUWgEGDXUBfkhQJVx+8xZJAYw+sfYXQiFuZd\nfyYv0pOR8F7FIdNC32zIFQpYdZ/SPROTY0FSNGlCUc1L0HX44E9T8bG9F+Lm9jpD\n1ME4SG+XkF9QBAuDGTIVk/qQCK1fIlyrO4t/6hCu9z1+7ZeXxqi2D/D8LOItzTgs\nW2F8oaOxOv5q5d9X/Bneb+8FpNWdACvmW9NtVLaBjI0VO3Ew+xHj8tyd\n-----END ENCRYPTED
如果你比较那些字符串,你应该意识到缺少几个字节!
当前输出应该附加PRIVATE KEY-----\n
,因此这是数组的最后一个元素的一部分,这将导致-----END ENCRYPTED PRIVATE KEY-----
。
我实际上只是实现-----END ENCRYPTED
。
我考虑过堆内存限制。 php.ini sais 256Mb是保留的。 我还读到变量可以达到2Gb大。 所以这不应该是这里的问题。
implode()
也应该没问题,因为像file_get_contents()
这样的其他功能也会返回相同的错误结果。
按行搜索代码,如下所示:
function readline($file){
$string = null;
$handle = fopen($file, "r");
if ($handle) {
while (($line = fgets($handle)) !== false) {
$string .= $line;
}
fclose($handle);
}
return $string;
}
我一直在寻找这个错误。跟踪调试器内部的调用使得甚至可以在每种情况下识别1024字节的修复大小,不使用我使用的方法。
您是否曾经历过这种异常行为? 我希望这不是太容易,我只是遗漏了一些重要的东西。
结果字符串应包含与数组元素完全相同的数据。
答案 0 :(得分:2)
我使用的调试器实用程序似乎存在严重问题。 这是一张显示现象的图像。我高度假设在调试模式下,变量内容查看器中只会显示1024个字节。 代码很好,php不是错误=)
以前没有真正的问题。