按字符拆分文本(使用file_get_contents和file_put_contents)

时间:2013-09-13 13:11:06

标签: php split file-get-contents

我有以下代码,它的工作原理完全正确:

<?php
$text = "text"; $text_ok = urlencode($text);
if(!@file_get_contents("http://site.com/t=".$text_ok))
{
    echo "Error.";
}
else
{
    $data = file_get_contents("http://site.com/t=".$text_ok);
    $file = "texts/".md5($text).".txt";
    if(!file_exists($file)) {
        file_put_contents($file, $data);
    }
?>
Lorem <?php echo $file; ?>"> ipsum
<?php
}
?>

问题是http://site.com/t=$text_ok仅在$text少于25个字符时才有效。我想知道当$text超过25个字符时是否有可能分成多个部分并创建texts/md5($text)/1.txttexts/md5($text)/2.txt等文件。我希望您理解。任何帮助表示赞赏。谢谢!

1 个答案:

答案 0 :(得分:1)

试试这个:

<?php
$text = "text";
$split = str_split($text, 25);
$count = 1;
foreach ($split as $s) {
    $text_ok = urlencode($s);
    if (!@file_get_contents("http://site.com/t=" . $text_ok)) {
        echo "Error.";
    } else {
        $data = file_get_contents("http://site.com/t=" . $text_ok);
        $file = "texts/" . md5($text) . "/" . $count . ".txt";
        if (!file_exists($file)) {
            file_put_contents($file, $data);
        }
        ?>
        Lorem <?php echo $file; ?>"> ipsum
        <?php
    }
    $count++;
}
?>