我有一个verrrrrrrry长base64编码的字符串,它显示在一个textarea。问题是这个字符串没有任何空格或回车符,所以它用一个难看的水平滚动条显示在一行上。PHP的 - 添加/删除回车到基地64编码字符串
我可以在base64_encode()之后和输出到textarea之前手动添加回车函数,然后在从textarea中检索此字符串(解码之前)后删除这些CR?
我有一个verrrrrrrry长base64编码的字符串,它显示在一个textarea。问题是这个字符串没有任何空格或回车符,所以它用一个难看的水平滚动条显示在一行上。PHP的 - 添加/删除回车到基地64编码字符串
我可以在base64_encode()之后和输出到textarea之前手动添加回车函数,然后在从textarea中检索此字符串(解码之前)后删除这些CR?
你可以使用chunk_split
你的字符串分割成具有特定长度的块,然后重新加入你想要的字符或字符串那些大块:
$str = base64_encode($whatever);
echo '<textarea name="textarea">'
. chunk_split($str, 30, "\n") // put a newline every 30 characters
. '</textarea>';
由于base64_decode
忽略空格,你不需要一旦你检索textarea的值,做任何特别的事情。
这可以通过PHP函数wordwrap完成。
当然可以。空白将被忽略:
<?php
echo base64_encode('Lorem Ipsump'); // TG9yZW0gSXBzdW1w
echo base64_decode('TG9 yZW0gS XBz dW1w'); // Lorem Ipsump
?>
base64_decode(wordwrap(base64_encode('very ... long'), 80, "\n", true)) == 'very ... long'
感谢,我结束了使用chunk_split:D – Alex 2010-09-22 21:43:51