1

我有一个名为 $data 的变量,其中包含一个巨大的字符串(27338 个字符)。

此字符串将是 pdf 文件的内容。

我需要在 pdf 文件的每一页末尾添加一个脚注。

我计算出每页 2642 个字符。

如何将 $data 切成 2642 个字符的块,以便添加脚注?

我正在努力:

$split = preg_split('/(.{0,2642})\s/',
                    $data,
                    0,
                    PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_NO_EMPTY);

$count = count($split);
foreach ($split as $key => $page) {

    echo $page; echo "<br><br>";
}

但是每个 $page 显示的字符远少于 2642 个。

非常感谢

4

3 回答 3

2

我从未将它用于大量数据,但将字符串拆分为等长元素的一种方法是使用 str_split 函数(请参阅http://php.net/str_split

用法:

$array = str_split('some text', 2);

你会得到一个元素长度为 2 的数组(最后一个除外)

于 2012-05-31T11:25:18.183 回答
0

您可以使用 substring-function,它将从不同的字符串创建一个特定的子字符串(具有定义的长度)。

substr($STRING, A, B); //where $string is the original string, 
                       //A is the position where to start cutting
                       //B is how long the newly created string should be (it's optional!)
$text = "ABCDEF";
echo substr($text, 2, 2); //will give you "CD"
于 2012-05-31T11:20:14.267 回答
0

这?

define("CHUNK_SIZE",2642);
$string = "big..";
$chunks = array();
for($x=0,$sz=strlen($string);$x<$sz;$x+=CHUNK_SIZE) {
   $chunks[] = substr($string,$x,$x+CHUNK_SIZE);
}
$chunks[0..n] += FOOTNOTE

然后:

implode("",$chunks);
于 2012-05-31T11:27:42.770 回答